嗨,我已经在这个文件夹中创建了一个jar:'/usr/local/bin/niidle.jar‘。我还有一个罐子在/usr/local/bin/niidle.jar里。在我的niidle.jar文件中,有一个'lib‘文件夹,在那个'lib’文件夹中,有另一个jar文件'hector-0.6.0-17.jar‘。我在MANIFEST.MF中添加了这个'hector-0.6.0-17.jar‘文件,如下所示:
Manifest-Version: 1.0
Main-Class: com.ensarm.niidle.web.scraper.NiidleScrapeManager
Class-Path: hector-0.6.0-17.jar但是当我使用命令运行这个命令时:
>>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有什么问题,请告诉我这个例外的解决办法.
发布于 2011-01-14 06:51:16
它真的应该能用!请反复检查,和 jar文件(niidle.jar和hector-0.6.0-17.jar都在文件夹中)。遵循官方Java教程的示例,它确实应该工作:
/usr/
local/
bin/
niidle.jar
hector-0.6.0-17.jar否则,请再次检查,是否hector jar与eclipse中使用的完全相同。您可能有不同版本的jar来编译和执行,这可能会导致同样的问题。也许缺少的类不在hector中。
加法--如果您已经用文本编辑器编写了清单文件,请确保最后一行是空行!如果Class-Path属性行是最后一行,如果它没有以CR或LF结尾,那么它将不会被解析-并且hector不会添加到类路径中。
发布于 2011-01-14 06:34:50
http://www.jdotsoft.com/JarClassLoader.php和其他从页面链接的jar加载器总结问题和解决方案
https://stackoverflow.com/questions/4688514
复制相似问题