netbeans (7.4, 8.0, 8.01, 8.02) exec-maven-plugin in pom.xml 冲突不能 运行 main class

netbeans (7.4, 8.0, 8.01, 8.02) exec-maven-plugin in pom.xml conflicts can't run main class

我正在尝试切换到较新版本的 Netbeans,目前为 7.2。

项目 maven pom.xml 文件包含一个 exec-maven-plugin(如下所示),当尝试通过 netbeans 运行 项目时,它会执行以下而不是 运行ning主要 class,这发生在任何 class 以及该项目的任何主要方法

<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.1</version>
<executions>
    <execution>
        <phase>package</phase>
        <goals>
            <goal>exec</goal>
        </goals>
    </execution>
</executions>
<configuration>
    <executable>.\src\main\assembly\exe\edit_icons.bat</executable>
</configuration>
</plugin>

附加信息

cd C:\Developer\workspaces\advancemobility\source\app-office; "JAVA_HOME=C:\Program Files\Java\jdk1.7.0_51" M2_HOME=C:\Developer\sdk\apache-maven-3.0 cmd /c "\"\"C:\Developer\sdk\apache-maven-3.0\bin\mvn.bat\" -Dexec.args=\"-classpath %classpath ${packageClassName}\" -Dexec.executable=\"C:\Program Files\Java\jdk1.7.0_51\bin\java.exe\" -DskipTests=true -Dmaven.ext.class.path=\"C:\Program Files\NetBeans 7.4\java\maven-nblib\netbeans-eventspy.jar\" --offline --debug -o -X process-classes org.codehaus.mojo:exec-maven-plugin:1.2.1:exec\""

Apache Maven 3.0 (r1004208; 2010-10-04 13:50:56+0200)
Java版本:1.7.0_51
Java 家:C:\Program Files\Java\jdk1.7.0_51\jre
默认语言环境:en_ZA,平台编码:Cp1252
OS 名称:"windows 7" 版本:“6.1” 架构:"amd64" 家族:"windows"

我试过 netbeans 7.4、8.0、8.01、8.02,结果都一样,执行了一个包,主要的 class 不是 运行

有人有什么想法吗?或者我可能忽略了什么?

是的,运行 命令将传递 -D 变量来设置可执行文件 (java.exe),但您在 pom 中的配置获胜。

尝试将您的配置-> 可执行文件移动到执行元素内,这样您的配置对于该执行是私有的,并且 cmd 行应该能够再次注入不同的值。

我已经 运行 了解这个,并且(我认为)刚刚弄明白了。

问题出在 %classpath -- 它没有被实际的类路径所取代。当我将这些语句粘贴到 CMD window(每行一个,适当地替换 \ 转义字符)时,并将 %classpath 替换为我的 jar 文件名 (target/Mapping-1.0-SNAPSHOT.jar) 它 运行s :)