首页 文章

我不想为我的项目引用服务器端jar,我的primefaces spring项目必须使用我添加到lib文件夹的jar

提问于
浏览
0

我正在开发Primefaces Spring项目 . 最近我们将项目从JSF 1.2迁移到2.2版本 . 以前我们的项目是使用来自Project的lib文件夹的jsf Implementation和API jar,但现在它正在使用位于的jar中,

** \ wildfly-10.0.0.Final \模块\ SYSTEM \层\基\ COM \太阳\ JSF的IMPL \主**

** \ wildfly-10.0.0.Final \模块\ SYSTEM \层\基\的javax \面\ API \主**

在wildfly 10.x上部署时出现了 Services which failed to start 错误,JBAS014777:无法启动的服务:service jboss.deployment.unit . "abc.war" .POST_MODULE:服务jboss.deployment.unit中的org.jboss.msc.service.StartException . "abc.war" .POST_MODULE:无法处理部署的POST_MODULE阶段"abc.war"

如何配置我的项目使用lib jars.Which将有助于部署 .

1 回答

  • 0

    Wildfly 10会隐式添加一些依赖项 . 您可以找到它们的列表here .

    对于Web子系统,这些是:

    • javaee.api

    • com.sun.jsf-impl

    • org.hibernate.validator

    • org.jboss.as.web

    • org.jboss.logging

    如果您不想要其中一个,例如com.sun.jsf-impl,则可以使用jboss-deployment-structure.xml文件排除它们,如here所述 .

    在您的情况下,它可能看起来像这样:

    <jboss-deployment-structure>
      <deployment>
        <exclusions>
          <module name="com.sun.jsf-impl" />
        </exclusions>
      </deployment>
    </jboss-deployment-structure>
    

    可能你可能需要更多的排除,但原则应该是明确的 .

相关问题