Maven exec插件没有运行

时间:2017-10-31 17:51:35

标签: eclipse maven powershell plugins maven-exec-plugin

我正在尝试执行一个PowerShell脚本,该脚本在maven构建期间写入文件。

我通过Eclipse IDE使用mvn clean install调用构建。

这是我的pom.xml中的插件:

        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>exec-maven-plugin</artifactId>
            <version>1.6.0</version>
            <executions>
                <execution>
                    <goals>
                        <goal>exec</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <executable>${project.basedir}/.my-file.ps1</executable>
            </configuration>
        </plugin>
    </plugins>

powershell脚本是一个隐藏文件,这就是为什么我在文件名前面有一个.

但是,该插件未执行,我正在遵循官方documentation中的说明。

1 个答案:

答案 0 :(得分:1)

您正在运行mvn clean install,它将经历各种构建阶段,但您的exec插件执行未附加到任何阶段。你必须要么:

通过将<phase>元素添加到执行中来将执行附加到阶段,例如将其附加到pre-integration-test阶段:

   <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>exec-maven-plugin</artifactId>
        <version>1.6.0</version>
        <executions>
            <execution>
                <id>my-exec</id>
                <phase>pre-integration-test</phase>
                <goals>
                    <goal>exec</goal>
                </goals>
            </execution>
        </executions>
        <configuration>
            <executable>${project.basedir}/.my-file.ps1</executable>
        </configuration>
    </plugin>

或使用mvn exec:exec命令专门调用exec目标。

如果您不熟悉Maven生命周期和构建的各个阶段,请阅读Introduction to the Build Lifecycle指南,或特别是Plugins部分,以了解有关插件执行和阶段附件的更多信息。