Я создал jar в следующей папке usr/local/bin/niidle.jar
, и мой файл MANIFEST.MF
выглядит следующим образом:
Manifest-Version: 1.0
Main-Class: com.ensarm.niidle.web.scraper.NiidleScrapeManager
Class-Path: hector-0.6.0-17.jar
Я проверил, что файл hector-0.6.0-17.jar
также присутствует в папке:
/ Проекты / EnwelibDatedOct13 / Niidle / Библиотека / Hector-0.6.0-17.jar
Я не хочу давать полное имя пути к классу в файле MANIFEST.MF
, потому что мне нужно запустить этот jar на другом компьютере. Поэтому я дал только имя файла jar Class-Path=hector-0.6.0-17.jar
в файле MANIFEST.MF.
Несмотря на упоминание Class-Path в файле MANIFEST.MF, когда я запускаю это с помощью команды:
java -jar /usr/local/bin/niidle.jar arguments ...
Отображается сообщение об ошибке:
--Exception in thread "main" java.lang.NoClassDefFoundError:
me/prettyprint/hector/api/Serializer
at
com.ensarm.niidle.web.scraper.NiidleScrapeManager.main(NiidleScrapeManager.java:21)
Caused by: java.lang.ClassNotFoundException:
me.prettyprint.hector.api.Serializer
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
... 1 more
Пожалуйста, дайте мне решение для этого сообщения об ошибке.