在pom.xml中,使用maven-dependency-plugin
將特定的外部JAR文件下載到單獨位置(位於/tmp/externalTestJars/testjar.jar中) 。mvn exec:java在外部JAR文件中運行java文件
我想用exec-maven-plugin
在testjar.jar文件(Main.java)中運行java類。
我發現this SO question問有點相同的問題,但對於這個問題的答案沒有幫助我。
如果我直接運行Main.java文件(在創建.jar的原始項目中,使用mvn exec:java
),我可以使用下面的pom配置。
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.3.2</version>
<configuration>
<mainClass>org.example.Main</mainClass>
<!-- need to pass two arguments to the Main.java file main method -->
<arguments>
<argument>arg one</argument>
<argument>arg two</argument>
</arguments>
</configuration>
</plugin>
在上面的問題中,它有一個類似下面的答案在.jar文件中運行java文件。
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.3.2</version>
<configuration>
<mainClass>org.example.Main</mainClass>
<arguments>
<argument>-jar</argument>
<argument>/tmp/externalTestJars/testjar.jar</argument>
</arguments>
</configuration>
</plugin>
但在我的情況下,這些參數將被視爲一個通過在Main.java正弦的主要方法是期待兩個參數。所以這種方法對我不起作用。
這可以使用exec maven插件來完成,或者是否有任何其他方法可以做到這一點。
如果插件的.jar下載位置無關緊要,這也可能有所幫助。所以我們可以添加它作爲插件依賴項。 http://www.mojohaus.org/exec-maven-plugin/examples/example-exec-using-plugin-dependencies.html – prime