gpt4 book ai didi

java - 是否可以在一处定义 Maven 3 配置文件(及其激活策略)并在以后重用?

转载 作者:行者123 更新时间:2023-12-01 04:14:01 24 4
gpt4 key购买 nike

我的构建过程非常复杂,在 Windows 中运行时需要执行一些操作,在 Linux 中运行时需要执行一些操作,并且这些操作需要放置在许多不同的 POM 中。

我知道我可以根据操作系统激活特定的配置文件。但我发现的所有示例都包括在 <profiles> ... </profiles> 内采取行动标签,其中还包括这些配置文件的激活标准。我试图避免的是必须声明许多像这样的部分:

POM 1:

</profiles>
<profile>
<activation>
<os>
<family>Windows</family>
<arch>x86</arch>
</os>
</activation>
<build>
...
</build>
</profile>
...
</profiles>

然后,当我需要在不同的 POM 中为 Windows 做一些事情时,同样的情况,很多次......对于某些配置文件,激活范围更广。

我想在一处定义激活策略,然后执行以下操作:

<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.0</version>
<configuration>

<!-- if profile A is active -->
<source>1.6</source>
<target>1.6</target>

<!-- if profile B is active -->
<source>1.5</source>
<target>1.5</target>

</configuration>
</plugin>

只需根据 Activity 配置文件以不同方式配置插件,无需在大量 POM 文件中复制插件声明和每个配置文件的所有内容...

此外,如果配置文件 A 处于 Activity 状态,如何在多个位置进行配置?我是否必须在每个 POM 中重新声明标签及其激活策略,或者是否有办法避免所有这些重复?

感谢任何帮助,我有点困惑和惊讶,在网上找到除了基本示例之外的任何东西是多么困难。

最佳答案

您可以在 super-pom 中为各种配置文件定义全局构建。并在所有pom中继承它

关于java - 是否可以在一处定义 Maven 3 配置文件(及其激活策略)并在以后重用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19621244/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com