Java 类位于JBoss AS7 WAR WEB-INF/classes文件夹中时出现NoClassDefFoundError
我正在使用JBossAS7。在尝试部署我的应用程序时,我收到一个ClassNotFoundException-看起来它没有找到JMSExExceptionJava 类位于JBoss AS7 WAR WEB-INF/classes文件夹中时出现NoClassDefFoundError,java,jboss7.x,Java,Jboss7.x,我正在使用JBossAS7。在尝试部署我的应用程序时,我收到一个ClassNotFoundException-看起来它没有找到JMSExException 09:54:53,166 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-7) MSC00001: Failed to start service jboss.deployment.unit."myapp-maventest.war".INSTALL: org.jboss.ms
09:54:53,166 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-7) MSC00001: Failed to start service jboss.deployment.unit."myapp-maventest.war".INSTALL: org.jboss.msc.service.StartException in service jboss.deployment.unit."myapp-maventest.war".INSTALL: Failed to process phase INSTALL of deployment "myapp-maventest.war"
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:121)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1765)
at org.jboss.msc.service.ServiceControllerImpl$ClearTCCLTask.run(ServiceControllerImpl.java:2291)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [:1.6.0_26]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [:1.6.0_26]
at java.lang.Thread.run(Thread.java:680) [:1.6.0_26]
Caused by: java.lang.RuntimeException: Error getting reflective information for class com.mycompany.myapp.common.jms.servlets.StationLogout
at org.jboss.as.server.deployment.reflect.DeploymentReflectionIndex.getClassIndex(DeploymentReflectionIndex.java:70)
at org.jboss.as.ee.component.EEModuleClassDescription$DefaultConfigurator.configure(EEModuleClassDescription.java:144)
at org.jboss.as.ee.component.EEClassConfigurationProcessor.deploy(EEClassConfigurationProcessor.java:100)
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:115)
... 5 more
Caused by: java.lang.NoClassDefFoundError: JMSException
at java.lang.Class.getDeclaredMethods0(Native Method) [:1.6.0_26]
at java.lang.Class.privateGetDeclaredMethods(Class.java:2427) [:1.6.0_26]
at java.lang.Class.getDeclaredMethods(Class.java:1791) [:1.6.0_26]
at org.jboss.as.server.deployment.reflect.ClassReflectionIndex.<init>(ClassReflectionIndex.java:65)
at org.jboss.as.server.deployment.reflect.DeploymentReflectionIndex.getClassIndex(DeploymentReflectionIndex.java:66)
... 8 more
Caused by: java.lang.ClassNotFoundException: JMSException from [Module "deployment.myapp-maventest.war:main" from Service Module Loader]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:191)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:358)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:330)
at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:307)
at org.jboss.modules.Conc
09:54:53166错误[org.jboss.msc.service.fail](msc服务线程1-7)MSC00001:无法启动服务jboss.deployment.unit.“myapp maventest.war”。安装:org.jboss.msc.service.StartException in service jboss.deployment.unit.“myapp maventest.war”。安装:无法处理部署“myapp maventest.war”的阶段安装
位于org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:121)
位于org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1765)
位于org.jboss.msc.service.ServiceControllerImpl$ClearTCCLTask.run(ServiceControllerImpl.java:2291)
位于java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)[:1.6.026]
在java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)[:1.6.026]
在java.lang.Thread.run(Thread.java:680)[:1.6.0_26]
原因:java.lang.RuntimeException:获取类com.mycompany.myapp.common.jms.servlets.StationLogout的反射信息时出错
位于org.jboss.as.server.deployment.reflect.DeploymentReflectionIndex.getClassIndex(DeploymentReflectionIndex.java:70)
在org.jboss.as.ee.component.EEModuleClassDescription$DefaultConfigurator.configure(EEModuleClassDescription.java:144)上
位于org.jboss.as.ee.component.EEClassConfigurationProcessor.deploy(EEClassConfigurationProcessor.java:100)
位于org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:115)
... 还有5个
原因:java.lang.NoClassDefFoundError:JMSException
在java.lang.Class.getDeclaredMethods0(本机方法)[:1.6.0_26]
在java.lang.Class.privateGetDeclaredMethods(Class.java:2427)[:1.6.0_26]
在java.lang.Class.getDeclaredMethods(Class.java:1791)[:1.6.0_26]
位于org.jboss.as.server.deployment.reflect.ClassReflectionIndex。(ClassReflectionIndex.java:65)
位于org.jboss.as.server.deployment.reflect.DeploymentReflectionIndex.getClassIndex(DeploymentReflectionIndex.java:66)
... 8个以上
原因:java.lang.ClassNotFoundException:JMSExException来自服务模块加载器的[Module”deployment.myapp maventest.war:main]
位于org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:191)
位于org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:358)
位于org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:330)
位于org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:307)
在org.jboss.modules.Conc上
jmsception.class不在/modules/javax/jms中。我在jar文件javaee-api-6.0.jar中有这个类。我将这个jar文件复制到/src/main/webapp/WEB-INF/lib,但我仍然收到这个ClassNotFoundException
我需要帮助调试。我试过一件事——我想JBoss加载的/modules/javax module可能与我的javaee-api-6.0.jar文件冲突——所以我试着用src/main/webapp/WEB-INF/JBoss-deployment-structure.xml文件排除它
<jboss-deployment-structure>
<deployment>
<exclusions>
<module name="javax.jms" />
</exclusions>
</deployment>
</jboss-deployment-structure>
但我仍然得到相同的NoClassDefFoundError。关于如何修复的任何建议?您是否已在jbossas7中启用JMS模块?默认情况下,standalone.xml中未启用。您必须编辑正在使用的standalone.xml,然后它将加载JMS和实现(也称Hornetq).您是否在jbossas7中启用了JMS模块?默认情况下,standalone.xml中没有启用。您必须编辑正在使用的standalone.xml,然后它将加载JMS和实现(也称为Hornetq)。您的war文件结构是什么?您的jar在这场战争中的位置在哪里?您的war文件结构是什么?你的罐子在这场战争中的位置在哪里?