Intellij раптам кідалі ClassNotFoundException

Я ў поўнай разгубленасці тут. У мяне ёсць праект на знешнім цвёрдым дыску пад назвай LenseProject. Ўнутры LenseProject, у мяне ёсць .idea , Lib , Тубыльцы і SRC тэчкі. У мяне таксама ёсць некалькі тэкставых файлаў для чытання.

Калі ўчора вечарам я пакінуў працу, гэта ўсё працавала нармальна. Прайшоўшы па гэтай раніцай, я сустрэўся з:

Exception in thread "main" java.lang.ClassNotFoundException: QuadTest
    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:423)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:188)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:113) 

QuadTest з'яўляецца асноўным класам.

Інфармацыя, якую я думаю, што можа быць карысна:

  • If I comment out the imports, I get the appropriate error messages. (Cannot find symbol, etc).

  • I have 9 dependencies, located in lib\lwjgl-2.9.0\jar that are set up in Project Structure -> Libraries.

  • The module has LenseProject as the content root, and SRC as the source folder.

  • The language level is 7.0

  • I have the dependencies set to export in Project Structure -> Modules -> Dependencies.

  • In Compiler Output, I have it set to Use Module Compile Output Path, as Inherit Project Compile Output Path gave me "Cannot start compilation: The output path is not specified for module "LenseProject". Specify the output path in Configure Project.

  • I have VM option -Djava.library.path=Natives.

  • I can compile and run the program through command prompt no problem.

  • I was missing my configure options when I started it up this morning. I had to set the SDK again, and libraries.

24
Вы знайшлі рашэнне гэтай праблемы? Я сутыкнуўся такі ж, але праз тры гады :)
дададзена аўтар user3105453, крыніца
Вам неабходна загрузіць залежнасці першым затым дадаць яго ў шляху да класаў праекта.
дададзена аўтар Roman C, крыніца
Папытаеце ваш паспрабавалі ануляваць кэша. часта дапамагаюць з нечаканымі памылкамі. Файл-> несапраўдным кэшы
дададзена аўтар M4tchB0X3r, крыніца
Я не ўпэўнены, што вы маеце на ўвазе. У мяне ёсць залежнасці ў Lib тэчкі.
дададзена аўтар Cereal, крыніца
Так, я зрабіў паспрабаваць.
дададзена аўтар Cereal, крыніца

8 адказы

Open your Idea File --> Project Structure --> Modules ,and then choose problematic module,in the "Paths" tab change selected to "Use module compile output path ".

15
дададзена

Я сутыкнуўся з падобным пытаннем падчас напісання модульных тэстаў. Усё будзе працаваць у камандным радку, але не ў IntelliJ. IntelliJ будзе паспяховай кампіляцыі, але не запусціць тэст.

Then I ran across a post on IntelliJ's blog: http://blog.jetbrains.com/idea/2014/03/intellij-idea-13-1-released/

anet says:

March 21, 2014 at 12:20 pm

You may remove the existing junit dependency and allow IDEA to add JUnit library for your from scratch.

New junit doesn’t bundle hamcrest anymore but still depends on it on runtime.

Thanks, Anna

Я выдаліў JUnit з маіх налад праекта, і хай IntelliJ дадаць яго назад. Тады усё працавала нармальна.

8
дададзена
Ён працаваў як рэкламуецца;)
дададзена аўтар Edenshaw, крыніца

Try going to Preferences -> Compiler and select Eclipse, rather than using javac.

3
дададзена
@StephenC мой адказ для IntelliJ ...
дададзена аўтар BAR, крыніца
@StephenC так, гэта варыянт. Праверце гэта.
дададзена аўтар BAR, крыніца
Ermm ... гаворка ідзе пра Intellij ...
дададзена аўтар Stephen C, крыніца
Дык чаму вы расказваеце IntelliJ выбраць кампілятары Eclipse? Шанцы ёсць, яны не будуць устаноўлены. І гэта яшчэ адзін варыянт, каб выбраць іх?
дададзена аўтар Stephen C, крыніца
OK ... так пры ўмове, што ўсталяваныя кампілятары Eclipse (выцягванне!) ... >> << чаму б змяненняў кампілятараў выправіць тое, што, па сутнасці, праблема выканання класаў?
дададзена аўтар Stephen C, крыніца

У маім выпадку праблема была я паўторна на «з» каталога для вываду праграмы. Я вырашыў яе перанакіраваць выснову ў іншую тэчку.

1
дададзена

Я прапаную пацверджання Канфігурацыя Run наступным чынам:

Toolbar: Run->Edit Configurations..., confirm your Configuration is correct.

enter image description here

Спадзяюся, што гэта дапамагае.

0
дададзена

Мая праблема была, што ўсё гэта перайменаванне праекта-структура, мой залежнасці Maven ня Маха.

Пасля змены залежнасцяў Maven ў файле п, ён працаваў.

0
дададзена

I know its a bit old post but for me helped by going to Run-->Edit Configurations--> In Application Selected your main code file --> Configuration on the right panel. Checked "Use alternative JRE:" and selecting JDK folder called jre(.../Java/jdk.x.x.x_xx/jre). Apply and OK. I am really new with intelliJ but that solved my problem hope it helps someone.

0
дададзена

File -> Project Structrure -> Project. Change the Project Language level from "SDK default" to Actual version that you are using.

Гэта дзіўна, але вырашае праблему.

0
дададзена
Я паспрабаваў гэта, не працуе
дададзена аўтар Bhanu Devapatla, крыніца