报错:org.jboss.msc.service.DuplicateServiceException: Service jboss.undertow.deployment.default-server.default-host./energyreport.UndertowDeploymentInfoService is already registered”}}
原文链接:这里
0.前言
从github上拉下一个新版本,然后在使用Jboss(wildfly)调试的时候,提示打包war包出错,我想想上一个版本没有出错啊,怎么这个版本就会提示出错呢(不影响后台功能,只是war包出错)。看了看报错,说是已经存在,然后就想应该是Jboss是不是出了问题。
1.我的解决办法
搜了好长时间才明白,JBoss部署后会把包生成一个独有的文件夹content目录下,而且,在Jboss的跟目录下的 standalone/configuraton/standalone.xml 里会有会有相应的记录和配置。然后打开看下果然是,找到问题所在,
如上图所示,我在上一个版本中使用JBoss调试过,所以生成了一个4.9.1这个版本的记录,但是在新版本中使用了4.10.0,所以在生成war包的时候会出错。
解决办法就是我们删除掉红框的部分,重新启动服务器,一切就正常了。
2.其他解决办法
如果你发现上面的文件打开是正常的,而已也尝试过删除过红框部分了,还是不好用,那么可以尝试下面方法
(1)执行“clean”命令,然后再执行项目
(2)打开wildfly的standalone\deployments目录,查看没有和你正在运行的包同名的文件,如果有就先删除或者备份再跑项目。