我已经构建了我的应用程序并部署在WAS 6.1中。 我能够在WEB-INF / lib和war文件中看到我的jar文件, 在运行应用程序时,My WAS无法识别JSON jar文件。得到No Class def found错误。 请查找附件日志文件。
java.lang.NoClassDefFoundError:org.apache.commons.lang.exception.NestableRuntimeException at java.lang.ClassLoader.defineClassImpl(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:258) 在java.security.SecureClassLoader.defineClass(SecureClassLoader.java:151) at java.net.URLClassLoader.defineClass(URLClassLoader.java:589) at java.net.URLClassLoader.access $ 400(URLClassLoader.java:123) at java.net.URLClassLoader $ ClassFinder.run(URLClassLoader.java:1034) 在java.security.AccessController.doPrivileged(AccessController.java:279) 在java.net.URLClassLoader.findClass(URLClassLoader.java:491) 在com.ibm.ws.bootstrap.ExtClassLoader.findClass(ExtClassLoader.java:132) 在java.lang.ClassLoader.loadClass(ClassLoader.java:631) 在com.ibm.ws.bootstrap.ExtClassLoader.loadClass(ExtClassLoader.java:87) at java.lang.ClassLoader.loadClass(ClassLoader.java:597) at java.lang.J9VMInternals.verifyImpl(Native Method) at java.lang.J9VMInternals.verify(J9VMInternals.java:69) at java.lang.J9VMInternals.initialize(J9VMInternals.java:131) 在com.nationwide.websheets.web.util.JSONUtils.marshallToJSONWithDateProcessor(JSONUtils.java:113)
我试过了 1)我把我的jar文件放在server / lib中仍然没有帮助我。我想知道为什么它不能识别我的jar文件,如果它在server / lib或server / lib / ext中。 2)在WAS中创建了共享库。它对我没有帮助。 3)在系统变量中设置类路径,对我没有帮助。
对此有何帮助?谢谢你的帮助。
由于 CVSR Sarma。
答案 0 :(得分:2)
1)你的错误表明问题出在你的公共罐子里(不是JSON.jar本身)
2)确保它在你的WEB-INF / lib
中3)可能还存在版本/交叉依赖问题。请查看此处的“项目传递依赖项”表:
答案 1 :(得分:0)
我发现了这个问题。
这是因为WAS6.1的问题,我已经安装了WAS6.1.0.23修订包。有效。
它不是依赖性问题。
答案 2 :(得分:0)
我有同样的问题。我已经安装了WAS 6.1.0.23。 For
的此修订包Web Services Feature Pack和EJB 3.0 Feature Pack用户:
Web Services Feature Pack和EJB 3.0 Feature Pack Fix Pack 23作为Web Services Feature Pack和EJB 3.0 Feature Pack用户的单独PAK文件提供。
我不知道JSON.jar问题是如何工作的。