Tag: noclassdeffounderror

如何在命令行中运行包含OpenCV代码并使用ant创建的.jar文件?

我试图从Ubuntu控制台运行一个小的java类,它包含这样的OpenCV代码: import org.opencv.core.Core; import org.opencv.core.Mat; import org.opencv.core.CvType; import org.opencv.core.Scalar; class SimpleSample { static{ System.loadLibrary(Core.NATIVE_LIBRARY_NAME); } public static void main(String[] args) { System.out.println(“Welcome to OpenCV ” + Core.VERSION); Mat m = new Mat(5, 10, CvType.CV_8UC1, new Scalar(0)); System.out.println(“OpenCV Mat: ” + m); Mat mr1 = m.row(1); mr1.setTo(new Scalar(1)); Mat mc5 = m.col(5); mc5.setTo(new Scalar(5)); System.out.println(“OpenCV Mat […]

Windows和Mac上的Android库项目

我代表我的两个Android开发团队问这个问题。 我使用Windows,而我的合作伙伴使用的是Macbook。 当通过Git共享项目时, classpaths意外地搞砸了。 以下是一些观察: 引用的库项目(最初工作)无法再解析。 通过“Java Build Path”中的Projects选项卡添加时,可以找到库。 但应用程序崩溃(由于NoClassDefFoundError ),再次指向一个混乱的构建路径结构。 最初在Mac上引用的库项目曾经直接作为JAR出现在构建路径中。 现在他们在Android Dependencies下做了,这很奇怪(前者更多)。 在Windows上,上面的JAR一直在Dependencies和Referenced Libraries下。 我想以一种我们可以在Git上共享项目并在未来无缝工作的方式来解决这个问题。 🙂

NoClassDefFoundError:Mac计算机上的javax / swing / GroupLayout $组

我只在Mac计算机上测试Java程序时出现运行时错误。 它在各种Windows操作系统上测试完美。 这是我在Mac计算机上收到的错误消息… 线程“AWT-EventQueue-0”中的exceptionjava.lang.NoClassDefFoundError:javax / swing / GroupLayout $ project.MainPanel.calculateButtonActionPerformed(MainPanel.java:198)at project.MainPanel.access $ 200(MainPanel.java:32) at project.MainPanel $ 3.actionPerformed(MainPanel.java:97)at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1882)at javax.swing.AbstractButton $ Handler.actionPerformed(AbstractButton.java:2202)at javax.swing .DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)位于java.awt的javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)的javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)。 java.awt.Container.processEvent上的java.awt.Component.processEvent(Component.java:5367)中的javax.swing.JComponent.processMouseEvent(JComponent.java:3135)上的Component.processMouseEvent(Component.java:5602) .java:2010)java.awt.Con上的java.awt.Component.dispatchEventImpl(Component.java:4068) tainer.dispatchEventImpl(Container.java:2068)位于java.awt.Light上的java.awt.Component.dispatchEvent(Component.java:3903)java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4256)java.awt.LightweightDispatcher.processMouseEvent(Container) .java:3936)java.awt.LightweightDispatcher.dispatchEvent(Container.java:3866)at java.awt.Container.dispatchEventImpl(Container.java:2054)at java.awt.Window.dispatchEventImpl(Window.java:1801) java.awt.EventDispatchEvent(EventQueue.java:463)java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatch!)的java.awt.Component.dispatchEvent(Component.java:3903) Thread.j ava:269)java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:184)at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java: 176)at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)\ 我不知道为什么会这样。 我在Windows计算机上编译程序的事实可能是问题吗? 这是我唯一能想到的。

更新到Java 7后的NoClassDefFoundError

我在执行项目的JAR文件后得到NoClassDefFoundError。 使用Eclipse进行调试工作正常,但每当我使用windows命令java -jar myproject.jar时我都会收到此错误,因为我安装了JDK 1.7。 它使用Java 1.6工作正常。 这是错误日志: Exception in thread “main” java.lang.NoClassDefFoundError: org/apache/log4j/Layout at program.Main.main(Main.java:20) Caused by: java.lang.ClassNotFoundException: org.apache.log4j.Layout 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 我搜索了一下,但找不到合适的解决方案。 我已经做了什么:-uninstall Java 1.7,安装1.6而不是在另一台计算机上检查classpath -try(从中卸载Java 1.7之后) – 创建一个空项目,其中一个引用log4j库=>同样的问题 这是classpath文件: 你知道我还应该做什么吗? 谢谢, 尼尔斯 编辑:如果我将项目导出为“可运行的JAR”而不是简单的“JAR”,程序启动但无法使用我正在使用的另一个库(RxtxComm)。 这是我得到的日志: […]

无法解析Jena IRIFactory的NoClassDefFoundError

下面是我得到的错误日志的堆栈跟踪。 如果有人可以告诉究竟是什么导致了这一点,因为根据堆栈跟踪,我已经完成了所有工作。 Exception in thread “main” java.lang.NoClassDefFoundError: com/hp/hpl/jena/iri/IRIFactory at net.rootdev.javardfa.uri.IRIResolver.(IRIResolver.java:26) at org.odftoolkit.odfdom.pkg.rdfa.SAXRDFaParser.createInstance(SAXRDFaParser.java:57) at org.odftoolkit.odfdom.pkg.OdfFileDom.initialize(OdfFileDom.java:217) at org.odftoolkit.odfdom.pkg.manifest.OdfManifestDom.initialize(OdfManifestDom.java:74) at org.odftoolkit.odfdom.pkg.OdfFileDom.(OdfFileDom.java:132) at org.odftoolkit.odfdom.pkg.manifest.OdfManifestDom.(OdfManifestDom.java:63) at org.odftoolkit.odfdom.pkg.OdfFileDom.newFileDom(OdfFileDom.java:189) at org.odftoolkit.odfdom.pkg.OdfPackage.parseManifest(OdfPackage.java:1219) at org.odftoolkit.odfdom.pkg.OdfPackage.readZip(OdfPackage.java:452) at org.odftoolkit.odfdom.pkg.OdfPackage.initializeZip(OdfPackage.java:422) at org.odftoolkit.odfdom.pkg.OdfPackage.(OdfPackage.java:250) at org.odftoolkit.odfdom.pkg.OdfPackage.loadPackage(OdfPackage.java:320) at org.odftoolkit.simple.Document.loadDocument(Document.java:328) at org.odftoolkit.simple.TextDocument.loadDocument(TextDocument.java:305) at com.poc.LetsGetStarted.main(LetsGetStarted.java:13) Caused by: java.lang.ClassNotFoundException: com.hp.hpl.jena.iri.IRIFactory 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 […]

NoClassDefFoundError:注释处理期间的org / junit / AfterClass

我在使用maven进行注释处理期间使用CodeModel生成代码。 该代码用于JUnit测试: JMethod tearDownClass = testClass.method( JMod.PUBLIC | JMod.STATIC, Void.class, “tearDownClass”); tearDownClass._throws(Exception.class); tearDownClass.annotate(AfterClass.class); <- java.lang.NoClassDefFoundError 然而,编译过程在尝试检索java.lang.NoClassDefFoundError : org/junit/AfterClass时抛出了java.lang.NoClassDefFoundError : org/junit/AfterClass AfterClass.class ,这是一个注释本身。 对JUnit的依赖定义如下: junit junit 4.8.2 所以我的代码中应该有AfterClass.class 。 我该如何解决这个问题? 不清楚 调用codemodel的代码位于编译库中,其中junit不是“测试”依赖项。 但是,调用生成代码的代码具有相同的junit依赖性,但作为测试依赖性。 如果我将后一个依赖项更改为“not-a-test”依赖项,则问题就会消失。 为什么我必须将此依赖项定义为“not-a-test”,尽管只有调用codemodel的库明确使用它? 编辑 这是依赖树: net.dwst:codegentest:jar:1.0.0 +- junit:junit:jar:4.8.2:compile +- org.sonatype.maven.plugin:emma-maven-plugin:jar:1.2:test | +- emma:emma:jar:2.0.5312:test | \- org.apache.maven.reporting:maven-reporting-impl:jar:2.0.4:test | +- commons-validator:commons-validator:jar:1.2.0:test | | +- commons-beanutils:commons-beanutils:jar:1.7.0:test | […]

如何在运行时收集实现接口的所有类?

为了自动运行我的所有测试类,我查找专用目录中的所有类文件,将路径转换为包名并检查此类是否实现给定的接口: try { Class myTestClass = Class.forName( constructedClassName ); if( myTestClass.isInstance( MyTestInterface.class ) ) { testCollection.add( myTestClass ); } } catch( Error e ) { // ignore, no valid test class } 今天我使用这种技术遇到了一个丑陋的bug( 参见这个SO问题 )。 题: 如何收集我的所有测试类而不必忽略我不感兴趣的类可能出现的错误?

Eclipse中的java.lang.NoClassDefFoundError,但不包含Ant

我对一些Android项目和Eclipse有一个非常奇怪的问题。 我有许多Android项目都使用了大量相同的代码,因此将大量代码移动到Android库项目中。 在很长一段时间里,这对于三个应用程序来说效果很好。 今天,我也希望将这个库用于第四个应用程序,并遇到麻烦。 基本上情况如下: 库项目:包含一组活动以及一些实用程序类 新项目:在某种情况下实例化图书馆项目中的一项活动。 这应该都是微不足道的事情,我甚至在其他三个应用程序中完全相同的事情与完全相同的库项目完全相同的活动。 在新项目中,我在项目属性中引用了库项目,并将库项目中的活动添加到AndroidManifest.xml。 Eclipse现在认识到这一点,并让我参考活动。 一切都是好的。 应用程序运行正常,直到我执行从库项目启动活动的操作。 应用程序退出,logcat告诉我: FATAL EXCEPTION: main java.lang.NoClassDefFoundError: no.company.application.base.SomeDetailActivity at no.company.someotherapplication.SomeListActivity$4.onClick(SomeListActivity.java:466) at android.view.View.performClick(View.java:2538) at android.view.View$PerformClick.run(View.java:9152) at android.os.Handler.handleCallback(Handler.java:587) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper.java:123) at android.app.ActivityThread.main(ActivityThread.java:3691) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:507) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:847) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:605) at dalvik.system.NativeStart.main(Native Method) 这是有趣的开始。 我知道库项目与.apk捆绑在一起,因为我从这个项目中运行了一些实用程序代码。 但是当从Ant编译这个确切的项目时,通过使用命令ant debug然后使用ant installd ,应用程序运行得很好,包括启动活动。 因此,完全相同的项目设置可以在Ant中运行,但不适用于Eclipse。 我尝试过通过谷歌搜索找到的技巧,比如清理所有项目,删除特定项目的.project和.classpath并重新生成它们。 通过将其与工作项目中的清单文件进行比较,我还确保了我的清单文件是正确的。 无论我做什么,我都会再次遇到这个问题。 由于它使用Ant编译和运行得很好,在我看来项目本身没有任何问题,但我真的需要能够通过Eclipse编译它。 […]

如何分析由忽略的ExceptionInInitializerError引起的NoClassDefFoundError?

今天我花了我的下午分析一个NoClassDefFoundError。 在一次又一次地validation类路径之后,结果发现有一个类的静态成员抛出了第一次被忽略的exception。 之后,每次使用该类都会抛出一个没有有意义的堆栈跟踪的NoClassDefFoundError: Exception in thread “main” java.lang.NoClassDefFoundError: Could not initialize class InitializationProblem$A at InitializationProblem.main(InitializationProblem.java:19) 就这样。 没有更多的线条。 减少到这一点,这是问题: public class InitializationProblem { public static class A { static int foo = 1 / 0; static String getId() { return “42”; } } public static void main( String[] args ) { try { new A(); } […]

使用AWS SDK for java运行程序时出现NoClassDefFoundError

我试图运行AWS SDK for Java附带的DynamoDB示例。 我是用eclipse做的,并将aws-java-sdk-1.3.2.jar文件添加到项目的构建路径中。 编译当然很好,但我得到一个名为NoClassDefFoundError的运行时exception。 我知道这意味着该类在编译时存在但在运行时无法找到。 我尝试将jar文件添加到env变量 – 没有帮助。 我也检查过,在其他项目中使用其他外部jar文件没有问题。 Windows和Linux上的问题相同。 帮助任何人? 谢谢,本。 堆栈跟踪: Exception in thread “main” java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory at com.amazonaws.services.dynamodb.AmazonDynamoDBClient.(AmazonDynamoDBClient.java:62) at AmazonDynamoDBSample.init(AmazonDynamoDBSample.java:62) at AmazonDynamoDBSample.main(AmazonDynamoDBSample.java:67)