【问题标题】:Maven Exec Plugin not reading configurationMaven Exec插件未读取配置
【发布时间】:2010-11-06 00:24:48
【问题描述】:

我正在尝试使用 Maven exec:exec 目标执行我的项目,并尝试使用此 sn-p 对其进行配置:

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>exec-maven-plugin</artifactId>
    <version>1.1.1</version>
    <configuration>
        <executable>java</executable>
        <arguments>
            <argument>-jar ${staging.dir}/project.jar</argument>
        </arguments>
    </configuration>
    <executions>
        <execution>
            <goals>
                <goal>exec</goal>
            </goals>
        </execution>
    </executions>
</plugin>

当我运行 mvn exec:exec 时,我得到了输出:

------------------------------------------------------------------------
[ERROR]BUILD ERROR
------------------------------------------------------------------------
One or more required plugin parameters are invalid/missing for 'exec:exec'

[0] Inside the definition for plugin 'exec-maven-plugin' specify the following:

<configuration>
  ...
  <executable>VALUE</executable>
</configuration>

-OR-

on the command line, specify: '-Dexec.executable=VALUE'

我已经尝试过重组&lt;plugin&gt; 我能想到的一切,但没有任何区别?该项目是 POM 而不是 jar。

有什么想法吗?

【问题讨论】:

    标签: maven-2 maven-plugin


    【解决方案1】:

    我发现您的代码存在一个问题。您需要将 -jar 放入它自己的 argument 元素中。如果你不这样做,你会得到一个错误。你的代码的其余部分已经死了。这是我的一个项目中的一个工作示例。这会在执行mvn package之后执行一个打包在目标目录中的jar。如果您仍然遇到相同的错误,我会尝试从您的本地存储库中删除插件以获取新副本。还要确保插件不在pluginsManagement 元素中。如果失败,请发布您的整个 POM。

    <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>exec-maven-plugin</artifactId>
        <version>1.1.1</version>
        <executions>
            <execution>
                <goals>
                    <goal>exec</goal>
                </goals>
            </execution>
        </executions>
        <configuration>
            <executable>java</executable>
            <workingDirectory>/target</workingDirectory>            
            <arguments>
                <argument>-jar</argument>
                <argument>${project.build.directory}/${project.build.finalName}.jar</argument>
            </arguments>          
        </configuration>
    </plugin>
    

    【讨论】:

    • 我遇到了同样的问题,因为它在 pluginsManagement 而不是 plugins
    • 太棒了 - 但您需要在执行中添加一个阶段标签。例如 package...
    【解决方案2】:

    尝试将configuration 放入execution。

    【讨论】:

    • 配置元素不属于该插件的执行元素。
    猜你喜欢
    • 1970-01-01
    • 2018-04-12
    • 2013-08-02
    • 1970-01-01
    • 2015-10-22
    • 2017-05-11
    • 1970-01-01
    • 1970-01-01
    • 2014-11-10
    相关资源
    最近更新 更多