我已经在localhost上运行的本地服务器上成功部署了一场战争。但是,当我将WAR部署到远程AWS实例时,服务器正常启动,但是在启动几秒后取消部署我的WAR。
启动后,我从standalone / deployments目录恢复HelloWorld.war.failed
文件,如下所示:
>{
"JBAS014771: Services with missing/unavailable dependencies" => ["jboss.deployment.unit.\"HelloWorld.war\".weld.weldClassIntrospector is missing [jboss.deployment.unit.\"HelloWorld.war\".beanmanager]"],
"JBAS014879: One or more services were unable to start due to one or more indirect dependencies not being available." => {
"Services that were unable to start:" => ["jboss.deployment.unit.\"HelloWorld.war\".INSTALL"],
"Services that may be the cause:" => [
"jboss.deployment.unit.\"HelloWorld.war\".beanmanager",
"jboss.deployment.unit.\"Travlog.war\".beanmanager",
"jboss.remoting.remotingConnectorInfoService.http-remoting-connector"
]
}
>}
特别是
"jboss.deployment.unit.\"HelloWorld.war\".weld.weldClassIntrospector is missing [jboss.deployment.unit.\"HelloWorld.war\".beanmanager]"],
让我认为根本原因是missing/misplaced bean.xml
文件,但是我已经对此做了一些研究,发现在Wildfly 8.0.x中有一个错误,即使这个文件仍然需要规范不再需要它,但我相信这是在wildfly 8.0.x中解决的。
为了测试这个理论,我在我的eclipse项目中向beans.xml
目录添加了一个0字节src/main/webapp/WEB-INF/
文件,并在战争中验证它已部署到WEB-INF
目录。
问题:鉴于beans.xml文件存在于正确的目录中(并且在Wildfly 8.2.1中不应该这样做),这个缺少* .beanmanager依赖的原因是什么?
编辑:这可能是一个简单的菜鸟错误。我使用WINSCP直接将WAR上传到standalone / deployments文件夹,而不是使用管理控制台上传WAR并进行部署。当我使用管理Web GUI时,战争成功部署。但是,仍然不确定失败的机制。答案 0 :(得分:1)
这可能是一个简单的菜鸟错误。我使用WINSCP直接将WAR上传到standalone / deployments文件夹,而不是使用管理控制台上传WAR并进行部署。当我使用管理Web GUI时,战争成功部署。但是,仍然不确定失败的机制。