没有配置文件

时间:2013-01-11 15:48:37

标签: maven maven-plugin profile

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

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

2 个答案:

答案 0 :(得分:0)

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

<activation>
  <activeByDefault>true</activeByDefault>
</activation>

答案 1 :(得分:0)

今天回到了这个问题并且可以发现只有在插件调用所在的pom.xml声明时才会打印出配置文件。 all-profiles documantation表示

  

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

命令 active-profiles documentation表示:

  

显示此版本当前有效的配置文件列表。

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