0

我正在使用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>

调用所有配置文件后,它产生以下输出:

[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)

我的问题:此时出了什么问题或我的错误在哪里?

4

2 回答 2

0

今天回到这个问题,可以发现只有配置文件会被打印出来,如果他们在pom.xml插件调用所在的地方声明的话。所有配置文件的文档说

显示当前项目下的可用配置文件列表。

虽然命令active-profiles的文档说:

显示当前为此构建活动的配置文件列表。

由此得出的结论是,结果是正确的,我确实误解了描述..

于 2013-01-14T16:29:02.573 回答
0

简单的答案是,默认情况下会根据以下代码段激活配置文件:

<activation>
  <activeByDefault>true</activeByDefault>
</activation>
于 2013-01-11T17:52:41.937 回答