0

我正在尝试将一些库添加到我的项目中。当我调试应用程序时,一切正常,但是当我编译项目并运行它时,我得到:

Exception in thread "main" java.lang.NoClassDefFoundError: de/javasoft/plaf/synt
hetica/SyntheticaSimple2DLookAndFeel
        at pkg_main.FRM_Main.main(FRM_Main.java:56)
Caused by: java.lang.ClassNotFoundException: de.javasoft.plaf.synthetica.Synthet
icaSimple2DLookAndFeel
        at java.net.URLClassLoader$1.run(Unknown Source)
        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

看起来 JVM 无法获取该库。我在 NetBeans 中尝试了同样的方法并且效果很好,所以我认为这是 Eclipse 问题。

如果有人可以帮助我,请。提前致谢!

4

2 回答 2

1

您正在成功编译/导出代码,但是当您运行它时,您的类路径中缺少库。

netbeans 和 eclipse 的区别很可能是默认情况下,netbeans 在你导出的时候包含了 jar 中的所有库,而 eclipse 没有。如果您打算将所有内容打包在一个 jar 中,请确保在从 eclipse 导出时选择第一个导出屏幕上的所有库。

如果您希望只导出您的代码(例如,如果您希望切换库的版本而不重建您的 jar),您可以继续只导出您的代码,但是当您运行它时,您必须在类路径中指定库

java -cp "yourJar.jar;lib/*" my.package.MainClass
于 2013-07-26T14:54:28.190 回答
0

在 eclipse 和 Netbeans 中检查你的类路径,你会看到不同之处,

于 2013-07-26T14:44:07.660 回答