我尝试按照this response on SO中的配置使用我本地仓库中的jar位置作为插件参数,但它似乎不起作用。我不知道这是否是由于Maven版本比响应更新(我使用的是Maven 3.2.5)。
在我的pom.xml中,我需要在我的surefire插件定义中添加一个javaagent。 javaagent jar文件是我项目中的依赖项。
我尝试了以下内容:
<dependencies>
<dependency>
<groupId>org.jmockit</groupId>
<artifactId>jmockit</artifactId>
<version>${jmockit.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
...
<!-- Configuration to use jmockit on IBM J9 -->
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<argLine>-javaagent:${org.jmockit:jmockit:jar}</argLine>
</configuration>
</plugin>
我原以为${org.jmockit:jmockit:jar}
会扩展到jar的位置,但在我的mvn控制台中,我看到以下错误:
[ERROR] Command wascmd.exe /X /C "C:\IBM\SDP\jdk\jre\bin\java -javaagent:${org.jmockit:jmockit:jar} -jar C:\dev\Eclipse\rtc-connector\target\surefire\surefirebooter1389906134960134.jar C:\dev\Eclipse\rtc-connector\target\surefire\surefire5488684370604495471tmp C:\dev\Eclipse\rtc-connector\target\surefire\surefire_05402037720997438783tmp"
很明显,参数没有得到扩展。我希望/希望看到像-javaagent:c:\users\eric\.m2\repository\org.jmockit\1.20\jmockit-1.20.jar
或类似的东西。
我是否可以通过插件配置从我的依赖项中引用jar?我知道我可以使用dependency-plugin将jar复制到目标文件夹中的已知位置然后指向它,但我希望有一个更简单的解决方案,不需要中间步骤。
答案 0 :(得分:2)
要变量扩展,需要添加 maven-dependency-plugin :
<!DOCTYPE html>
<html>
<body>
<div id='buttons'>
<button class='add_div'>Add Div</button>
<button class='update_text'>Update text of last created div</button>
</div>
<div class='div_container'></div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
</body>
</html>
答案 1 :(得分:0)
maven-dependency-plugin包含可解决此问题的目标build-classpath
。
在命令行上,您可以执行以下操作:
mvn dependency:build-classpath -DincludeArtifactIds=testng -DincludeGroupIds=testng
导致:
C:\repository\org\testng\testng\6.8.21\testng-6.8.21.jar
生成的类路径也可以放入属性outputProperty
....
这也可以配置成pom ......
答案 2 :(得分:0)
您需要按如下所示设置“ argLine”标签值:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${surefire.version}</version>
<configuration>
<argLine>
-javaagent:"${localRepository}/org/jmockit/jmockit/${jmockit.version}/jmockit-${jmockit.version}.jar"
</argLine>
</configuration>
</plugin>
您需要设置存在jmockit jar的.m2回购路径。它对我有用。