我目前正在使用maven-jar-plugin从特定的类文件夹构建一个JAR,我将其作为提供的作用域依赖项包含在内。我现在需要在最终构建中包含此JAR作为依赖项。
那么,是否可以在构建的特定阶段包含依赖项?
注意:依赖项是在构建过程中构建的,因此它仅在编译阶段可用。
答案 0 :(得分:3)
解决这个问题的最简单方法是将您正在构建的代码与maven-jar-plugin分离到一个单独的Maven项目中,并将其称为主Maven项目中的普通依赖项。
这样你就不需要让一个Maven构建产生两个不同的工件(你正在生成的JAR,然后是主输出减去JAR的类),同时让第一个输出引用第二
或者,假设您的主项目的包类型设置为jar
,您只需将“特定类文件夹”类添加到项目的<resources>
元素,然后配置/覆盖{{1在maven-jar-plugin
阶段to exclude these classes期间运行的执行,以及package
中的<excludes>
元素。
答案 1 :(得分:0)
您可以配置files included in the generated jar:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<includes>
<include>relative_path_to_your_jar</include>
<include>**/**</include>
</includes>
</configuration>
</plugin>
http://maven.apache.org/plugins/maven-jar-plugin/jar-mojo.html#includes