Hibernate5与wildfly8(和jboss-logging)

时间:2017-08-16 20:36:46

标签: wildfly wildfly-8 hibernate-5.x jboss-logging

我的问题: Hibernate-5.0.12-Final使用Jboss-Logging-3.3.1.Final但wildfly8提供jboss-logging-3.1.4.GA。将3.1.4.GAHibernate5一起使用会导致NoSuchMethodException

我正在将包含war AND Hibernate-5.0.12-Final的{​​{1}}部署到wildfly8 AS中。

我尝试了以下内容:

  1. Jboss-Logging-3.3.1.Final

    中添加add-logging-api-dependencies
    standalone.xml
  2. 排除日志子系统或 <add-logging-api-dependencies value="false"/> <use-deployment-logging-config value="false"/> org.jboss.logging依赖项,我将jboss-deployment-structure.xml置于部署到wildfly AS的.war文件的WEB-INF中。

    <jboss-deployment-structure>
    <deployment>
        <exclusions>
            <module name="org.jboss.logging" />
        </exclusions>
    </deployment>
    </jboss-deployment-structure>
    

    <jboss-deployment-structure>
    <deployment>
       <exclude-subsystems>
          <subsystem name="logging" />
      </exclude-subsystems>
    </deployment>
    </jboss-deployment-structure>
    
  3. 两者都不起作用。它起作用,因为我的应用程序没有更多日志记录,提供的Jboss-Logging-3.3.1.Final未被使用。

    所以我最终更新了wildfly-modules文件夹(jar)中的modules/system/layers/base/org/jboss/logging/ jboss-logging。这有效,但我认为必须有一个更好的解决方案,因为交换/替换jar可能会破坏在某个版本(3.1.4.GA)中需要jboss-logging的其他模块的依赖关系。

    TLDR; 我只想告诉我的wildfly8它应该使用jboss-logging jar(由我提供,在war文件中)而不是wildfly提供的jboss-logging.jar如。

0 个答案:

没有答案