java - 如何使用 Maven 在 MANIFEST.MF 中为 JBoss AS 7 生成模块依赖项?

标签 java maven jboss dependencies jboss7.x

在 JBoss AS 7 中,依赖于 AS 中包含的库的 Web 应用程序必须在 META-INF/MANIFEST.MF 中声明这些依赖项,如下所示:

Dependencies: <package-name>

例子:

Dependencies: org.slf4j

(这类似于 Import-Package: for OSGi。) 更多信息可以在关于 migration from older versions 的文章中找到。 , class loadingimplicit module dependencies for deployments

该项目是使用 Maven 构建的。 AS 中包含的所有依赖项都使用“已提供”范围声明。

现在的问题

是否有一种简单的方法可以使用 Maven 自动创建此依赖项列表?

仅应包含声明范围为“提供”的依赖项,因为所有其他依赖项都已包含在 WAR 中。

最佳答案

这些依赖项是由 maven Artifact 没有任何映射的名称声明的。您可能可以使 groupId 与 jboss 模块名称保持同步,但我不确定这是否是个好主意。而且我仍然想不出任何自动化的解决方案。

但是有一个地方可以手动管理配置,如您在问题中提供的来源之一所述:

   <build>
       ...
       <plugins>
         <plugin>
           <groupId>org.apache.maven.plugins</groupId>
           <artifactId>maven-war-plugin</artifactId>
           <configuration>
              <archive>
                 <manifestEntries>
                    <Dependencies>org.slf4j</Dependencies>
                 </manifestEntries>  
              </archive>
           </configuration>
         </plugin>   
       </plugins>
    </build>

我希望有人想出一个插件来使它不那么麻烦。

关于java - 如何使用 Maven 在 MANIFEST.MF 中为 JBoss AS 7 生成模块依赖项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6690731/

相关文章:

java - 在屏幕上移动手指时 OnTouchListener ACTION_MOVE 不起作用

java - 在 Mac OS X 上预安装的 Maven 给出 java.lang.ClassNotFoundException

JavaFX:FXML 字段可以是私有(private)的吗?

java - 为什么 WildFly 控制台日志会劫持我的 WAR 的 log4j 日志?

java - 从远程服务器获取 Windows 中记录的用户名

java - 旋转具有透明背景的 BufferedImage

java - java中删除以.csv、.html、.doc结尾的文件

java - 如何启动 jvm,我们可以在一个系统上运行多个 jvm 吗?

java - Maven:无法找到或加载主类

jboss - JBoss 中的 ExceptionSorter 类是如何工作的?