我正在使用maven-helper-plugin
来确定哪些配置文件可用。
我当前的settings.xml
在我自己的个人资料文件夹中包含以下定义:
<profile>
<id>cqDevAuthorProfile</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
...
</properties>
<repositories>
<repository>
<id>localinstance</id>
...
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>localinstance</id>
...
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
<profile>
<id>cqDevPublishProfile</id>
<properties>
...
</properties>
<repositories>
<repository>
<id>localinstance</id>
...
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>localinstance</id>
...
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
我使用的pom.xml
如下所示:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-help-plugin</artifactId>
<version>2.1.1</version>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>all-profiles</goal>
<goal>active-profiles</goal>
</goals>
<configuration></configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
在调用 all-profiles 之后,它产生了以下输出:
[INFO]
[INFO] --- maven-help-plugin:2.1.1:all-profiles (default) @ maven-multi-enviroment-deployment-plugin ---
[WARNING] No profiles detected!
目标 active-profiles 产生输出:
[INFO]
Active Profiles for Project '...:maven-multi-enviroment-deployment-plugin:pom:0.0.1-SNAPSHOT':
The following profiles are active:
- cqDevAuthorProfile (source: settings.xml)
我的问题:出现了什么问题或者我的错误在哪里?
答案 0 :(得分:0)
简单的答案是,默认情况下会根据以下代码段激活配置文件:
<activation>
<activeByDefault>true</activeByDefault>
</activation>
答案 1 :(得分:0)
今天回到了这个问题并且可以发现只有在插件调用所在的pom.xml
声明时才会打印出配置文件。
all-profiles 的documantation表示
显示当前项目下的可用配置文件列表。
命令 active-profiles 的documentation表示:
显示此版本当前有效的配置文件列表。
结论是,结果是正确的,我确实误解了描述..