Попытка загрузить файлы .class в Eclipse

#java #classnotfoundexception

#java #classnotfoundexception

Вопрос:

Для класса нам дали кучу файлов .class, которые мы должны использовать. Они у меня расположены в папке с именем lib. Я думаю, что я правильно добавил папку в путь сборки, поскольку на панели моего проекта появилась папка под названием «Справочные библиотеки» с папкой под названием lib, содержащей все файлы класса.

Проблема, с которой я сталкиваюсь сейчас, заключается в том, что при попытке скомпилировать неполный код я получаю

   Exception in thread "main" java.lang.NoClassDefFoundError: Unearthed/GPRFrame
 at GPR.main(GPR.java:18)
Caused by: java.lang.ClassNotFoundException: Unearthed.GPRFrame
 at java.net.URLClassLoader$1.run(Unknown Source)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.net.URLClassLoader.findClass(Unknown Source)
 at java.lang.ClassLoader.loadClass(Unknown Source)
 at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
 at java.lang.ClassLoader.loadClass(Unknown Source)
 ... 1 more
  

Я понятия не имею, что здесь делать. Я просто хочу загрузить файлы .class, чтобы продолжить работу над своим проектом. Заранее спасибо, ребята!

Редактировать: я попытался поместить файлы в папку lib Unearthed и добавить это в путь сборки, но я все еще получал ту же ошибку. Я использую eclipse для компиляции и запуска кода.

Комментарии:

1. возможно, это проблема с пакетом. если файлы .class должны находиться в пакете, они должны находиться в папке с этим именем пакета, а не в папке с именем lib. должны ли файлы .class быть частью пакета?

Ответ №1:

Предполагая, что класс вызывается:

 Unearthed.GPRFrame
  

Это означало бы GPRFrame.class должно быть в libUnearthed не lib

Ответ №2:

Вы компилируете код вне eclipse? если да, то вам нужно добавить библиотеку в ваш classpath javac -cp lib …. если нет, то я не уверен, что eclipse должен был пожаловаться с некоторыми красными метками, говорящими о том, что он может найти класс, который вы используете.