我之前已经问过这个问题,但我有一个特殊情况似乎不属于其他答案。
我已经有两个网络应用程序按预期打包并部署到我的JBoss EAP 7.x上。然而,我的第三次尝试是行不通的。以下是与其他两个不同的地方:
当我尝试部署war文件时,出现以下错误:
Cannot upload deployment: {"WFLYCTL0080: Failed services" =>
{"jboss.undertow.deployment.default-server.default-host./auto-update-
tool.UndertowDeploymentInfoService" => "org.jboss.msc.service.StartException
in service jboss.undertow.deployment.default-server.default-host./auto-
update-tool.UndertowDeploymentInfoService: java.lang.ClassNotFoundException:
servlet.ServletContextListener from [Module \"deployment.auto-update-
tool.war:main\" from Service Module Loader] Caused by:
java.lang.ClassNotFoundException: servlet.ServletContextListener from
[Module \"deployment.auto-update-tool.war:main\" from Service Module
Loader]"}}
这些消息对我来说并不陌生,但这次我正在努力解决它。
基础知识第一:How do I import the javax.servlet API in my Eclipse project? 我已经遵循了这一点。我的pom文件中确实有JavaEE依赖项。这适用于我的所有三个项目。他们都提供了范围:
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-web-api</artifactId>
<version>6.0</version>
<scope>provided</scope>
</dependency>
如果我完全删除了这个,我在maven命令行中收到包装错误。如果我只删除提供的范围行,我会得到另一个但类似的错误:
Cannot upload deployment: {"WFLYCTL0080: Failed services" =>
{"jboss.deployment.unit.\"auto-update-tool.war\".POST_MODULE" =>
"org.jboss.msc.service.StartException in service
jboss.deployment.unit.\"auto-update-tool.war\".POST_MODULE: WFLYSRV0153:
Failed to process phase POST_MODULE of deployment \"auto-update-tool.war\"
Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException:
java.lang.ClassNotFoundException: servlet.ServletContextListener from
[Module \"deployment.auto-update-tool.war:main\" from Service Module Loader]
Caused by: java.lang.ClassNotFoundException: servlet.ServletContextListener
from [Module \"deployment.auto-update-tool.war:main\" from Service Module
Loader]"}}
我也尝试将我的javax依赖关系切换出来,我认为它与JBoss 7.x中实现的版本相同:
<dependency>
<groupId>org.jboss.spec.javax.servlet</groupId>
<artifactId>jboss-servlet-api_3.1_spec</artifactId>
<version>1.0.1.Final</version>
<scope>provided</scope>
</dependency>
错误消息现在已经消失,但替换为简单的&#34;上传失败&#34;没有任何错误消息。我试着查看日志文件,但也没有。我仍然觉得奇怪的是,我的其他应用程序都与其他javax依赖项一起工作。
我迷路了。关于如何从这里开始的任何建议?