java.lang.NoClassDefFoundError:部署Web应用程序

时间:2015-05-28 09:35:05

标签: java jboss

在Windows 7中运行JBOSS EAP 6.4.0.GA(AS 7.5.0.Final-redhat-21)。 Commons lang 部署在路径中 。\ jboss-eap-6.4 \ modules \ system \ layers \ base \ org \ apache \ commons \ lang \ main \ commons-lang-2.6.0.redhat-4.jar和module.xml在同一个文件夹中说

<module xmlns="urn:jboss:module:1.1" name="org.apache.commons.lang">...

根据Red Hat,在我的网络应用程序的META-INF / MANIFEST.MF中,我有条目:

Dependencies: org.apache.commons.lang

使用Netbeans 8.0.2我调试应用程序,但它无法启动错误:

[org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/TestApp]] (ServerService Thread Pool -- 62) 
JBWEB000287: Exception sending context initialized event to listener 
instance of class com.netu.test.web.ContextListener: java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils
            at com.xxx.lib.db.ConnectionPoolSetter.setJdbcURL
(ConnectionPoolSetter.java:81)

所以我得到关于Jboss没有找到类StringUtils的错误,但该类是in commons lang。请注意,我不想在Web App的WEB-INF / lib中部署公共语言。我想使用JBoss中安装的模块。

我做错了什么?

1 个答案:

答案 0 :(得分:1)

  1. 在/ WEB-INF
  2. 中创建一个jboss-deployment-structure.xml
  3. 添加以下XML:

    For