Wildfly部署 - LoggerConfigurator已注册

时间:2018-02-06 10:08:23

标签: deployment jboss wildfly

我在使用Wildfly 10.1.0 Final部署war应用程序时遇到问题。 我的问题是:

Caused by: org.jboss.msc.service.DuplicateServiceException: Service 
jboss.pojo."org.jboss.netty.internal.LoggerConfigurator".DESCRIBED 
is already registered

我明白 - 为什么会发生并知道如何解决,但我不知道什么是最佳解决方案。

我部署了两个具有依赖关系org.apache.curator:curator-framework:2.9.0的战争,它传递的是io.netty:netty:3.7.0.Final。而且我可以看到版本3.9.0和早期的所有netty库都有jboss-beans.xml - 这就是我的问题。应该注意的是,第一次战争部署总是成功的 - 当我部署第二次战争时抛出异常。

我找到了解决这个问题的方法:

  1. 我可以在我的项目中添加版本3.9.0.Final或更高版本的netty并解决我的问题 - 因为gradle将使用更高版本。但我不会在我的项目中使用netty - 并且不想拥有存根依赖。 但它确实有效。

  2. 我可以像在此处一样删除wildfly中的pojo子系统:Remove pojo subsystem from wildfly - 它可以在我的测试服务器上运行,但如果我没有任何权限 - 我就不能做到这一点。对于生产者来说 - 我没有任何权利去攻击' wildfly。此解决方案也适用

  3. 我可以在Wildfly中使用新的netty库部署jar,之后我可以在jboss-deployment-structure.xml中添加依赖项,在我的战争之前我应该​​排除旧的netty库。 我不会这样检查。

  4. 我可以在pojo中排除jboss-deployment-structure.xml个子系统,但我不会知道如何 - 我尝试过像:

         

        

  5. 它以The service container has been destabllilized by previous operation and further runtime updates cann't be processed.

    的错误结束

1 个答案:

答案 0 :(得分:0)

我认为,如果您无法删除pojo子系统 - 最好的方法是首先解决方案 - 因为在所有情况下我们都会在war文件中包含netty。

希望,我的部署痛苦会帮助某人