2015-08-26 4 views
0

Я работаю из двух разных ноутбуков и, естественно, использую GitHub VCS, чтобы связать свою работу с машинами. Недавно я начал проект Java, где файлы .class сохранены в каталоге src/.Клонирование GitHub repo в классы IntelliJ IDEA java классы

Всякий раз, когда я клонирую удаленное репо на свою вторую машину, никто из классов не будет работать. У меня есть назначенный и настроенный SDK/JDK.

здесь сообщение об ошибке:

/usr/lib/jvm/java-7-oracle/bin/java -Didea.launcher.port=7532 -Didea.launcher.bin.path=/home/me/idea-IC-141.1532.4/bin -Dfile.encoding=UTF-8 -classpath /usr/lib/jvm/java-7-oracle/jre/lib/resources.jar:/usr/lib/jvm/java-7-oracle/jre/lib/management-agent.jar:/usr/lib/jvm/java-7-oracle/jre/lib/deploy.jar:/usr/lib/jvm/java-7-oracle/jre/lib/charsets.jar:/usr/lib/jvm/java-7-oracle/jre/lib/rt.jar:/usr/lib/jvm/java-7-oracle/jre/lib/jce.jar:/usr/lib/jvm/java-7-oracle/jre/lib/jsse.jar:/usr/lib/jvm/java-7-oracle/jre/lib/javaws.jar:/usr/lib/jvm/java-7-oracle/jre/lib/plugin.jar:/usr/lib/jvm/java-7-oracle/jre/lib/jfxrt.jar:/usr/lib/jvm/java-7-oracle/jre/lib/jfr.jar:/usr/lib/jvm/java-7-oracle/jre/lib/ext/sunec.jar:/usr/lib/jvm/java-7-oracle/jre/lib/ext/sunjce_provider.jar:/usr/lib/jvm/java-7-oracle/jre/lib/ext/dnsns.jar:/usr/lib/jvm/java-7-oracle/jre/lib/ext/zipfs.jar:/usr/lib/jvm/java-7-oracle/jre/lib/ext/localedata.jar:/usr/lib/jvm/java-7-oracle/jre/lib/ext/sunpkcs11.jar:/home/me/idea-IC-141.1532.4/lib/idea_rt.jar com.intellij.rt.execution.application.AppMain HourglassFigure 
Exception in thread "main" java.lang.ClassNotFoundException: HourglassFigure 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358) 
    at java.lang.Class.forName0(Native Method) 
    at java.lang.Class.forName(Class.java:195) 
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:122) 

Process finished with exit code 1 

Я подозреваю, что .iml файлы виноват? или это также потому, что я использую .gitignore?

Всякий раз, когда я создаю новый проект IDEA и просто копирую код в новый файл класса java, код выполняется без ошибок.

+1

Как правило, файлы классов выбрасывают файлы, которые не хранятся в проекте в VCS, распространяются или иным образом. Единственный способ, с помощью которого можно игнорировать файл, - это сохранить файл проекта (iml) в git, а файл игнорирования сообщает git игнорировать iml. Я хотел бы проверить структуру проекта (F4), чтобы узнать, добавляется ли каталог с файлами классов в путь класса. Тем не менее, я бы не стал добавлять файлы классов в git. – Gavin

+0

Как программисты Java, использующие IJ IDEA, удобно фиксируют и клонируют репозитории? Я удалил параметр '.gitignore', предотвращающий'/out/'и' .class', но я все еще неспособен поделиться своей работой – phillipsK

ответ

0

Как правило, я не проверяю настройки IDE, так как они могут различаться между машинами (например, JDK могут находиться в разных местах, IDE-специфичные исполняемые файлы могут быть разными путями и т. Д.). Это IntelliJ/SBT связанных отрывок из моего .gitignore:

target/ 
.project 
.idea* 
/project.plugins/project 
ca.log 
*.iml 

Так добавить, что к вашему .gitignore, настроить проект на обеих машинах и посмотреть, если он работает.