【发布时间】:2021-06-24 15:17:49
【问题描述】:
如你所见:
我将jni4net.j-0.8.6.0.jar 添加到我引用的库中,但我仍然收到java.lang.NoClassDefFoundError 异常:
java.lang.NoClassDefFoundError: net/sf/jni4net/Bridge
at sibeclipseplugin.debug.DebuggerInterface.initialize(DebuggerInterface.java:15)
at sibeclipseplugin.debug.SibDebugTarget.<init>(SibDebugTarget.java:65)
at sibeclipseplugin.ui.launch.LaunchConfigurationDelegate.launch(LaunchConfigurationDelegate.java:30)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:858)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:707)
at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:1018)
at org.eclipse.debug.internal.ui.DebugUIPlugin$8.run(DebugUIPlugin.java:1222)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
Caused by: java.lang.ClassNotFoundException: net.sf.jni4net.Bridge cannot be found by SIBEclipsePlugin_0.0.0.1
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 8 more
我不知道问题是什么。当我将项目作为 Eclipse-Application 启动时,它找不到该类。在普通的 Java 项目中运行相同的代码是可行的。
有人知道如何解决这个问题吗?
【问题讨论】:
-
我认为其中一个 jar 在系统类路径中,eclipse 看不到。如果可能,将该 jar 也移动到项目类路径中。
-
如果这是一个 Web 应用程序,请将 jar 放到 WEB-INF/lib 文件夹中。否则,我建议在您的项目中创建一个文件夹(我倾向于将其称为 lib)并将 jar 放在那里,然后引用该文件夹和那里的所有 jar 作为构建路径的一部分。
-
见鬼,你是对的。我没想到!也许你也可以告诉这个:我有一个 .dll 文件,调试的 Eclipse-Application 需要它。有没有办法告诉 eclipse 插件导出我已经复制到项目中的 .dll 文件?
标签: java eclipse exception eclipse-plugin