java - 測試階段之前的Maven 運行類: exec Maven 插件 exec:java 未執行類

  显示原文与译文双语对照的内容
93 1

我在 Jenkins box用 Maven 做jUnit4測試。我的目標是在執行測試之前還原一個測試資料庫。

它看起來像 exec-maven-plugin,但我不能讓它運行。有什麼指示雖然有很多例子,但是is站點上的文檔很薄。

當前運行的類位於以下位置:

MyProject.src.test.java._tools.BuildTestEnvironment.java

我的pom.xml 包括:

<pluginManagement>
 <plugins>
 <plugin>
 <artifactId>maven-compiler-plugin</artifactId>
 <version>2.3.2</version>
 <configuration>
 <source>1.6</source>
 <target>1.6</target>
 </configuration>
 </plugin>
 <plugin> 
 <groupId>org.codehaus.mojo</groupId>
 <artifactId>exec-maven-plugin</artifactId>
 <version>1.3</version>
 <executions>
 <execution>
 <id>build-test-environment</id>
 <phase>generate-test-resources</phase> 
 <goals>
 <goal>java</goal> 
 </goals>
 </execution>
 </executions>
 <configuration>
 <mainClass>src.test.java._tools.BuildTestEnvironment</mainClass>
 </configuration>
 </plugin>
 </plugins>
</pluginManagement>

在Jenkins中運行這個,沒有什麼真正發生。如果我在本地運行的話

我嘗試過的事情,沒有成功:

在Jenkins中運行構建:項目生成並開始運行測試,但我的類不運行。

在本地運行構建:與Jenkins的結果相同。沒有意外。

在本地運行 generate-test-resources: ClassNotFoundException 。IE:

mvn exec:java generate-test-resources
java.lang.ClassNotFoundException: src.test. java._tools.BuildTestEnvironment

將該類編譯為 jar,並將它的添加到我的pom中。

更新:

在閱讀 @ppuskar's 註釋之後,我嘗試將buildxxx類移到一。將它移動到 src.main. 。_tools 。buildtestenvironment之後,我仍然得到類似的消息。以下是我的構建日誌,以幫助你:

[DEBUG] 調用:test.java. _tools.BuildTestEnvironment.main( )
[DEBUG] 插件依賴項將被排除。
將包含 [DEBUG] 項目依賴項。
[DEBUG] 收集的項目構件 [joda-time:joda-time:jar:2.3:compile, net.sf. jt400:jt400:jar:6.7:compile, junit:junit:jar:4.11:compile, org.hamcrest:hamcrest-core:jar:1.3:compile, com.fasterxml.jackson.core:jackson-core:jar:2.3.0:compile, com.fasterxml.jackson.core:jackson-databind:jar:2.3.0:compile, com.fasterxml.jackson.core:jackson-annotations:jar:2.3.0:compile, org.hamcrest:hamcrest-all:jar:1.3:compile, org.apache.logging.log4j:log4j-api:jar:2.0-rc1:compile, org.apache.logging.log4j:log4j-core:jar:2.0-rc1:compile ]
[DEBUG] 收集的項目類路徑 [C:workspaceVSP_UnitTesttargetclasses ]
[DEBUG] 添加到類路徑:file:/C:/workspace/VSP_UnitTest/target/classes/
[DEBUG] 添加項目依賴項:joda到類路徑的時間
[DEBUG] 添加項目依賴項:jt400到類路徑
[DEBUG] 添加項目依賴項:junit到類路徑
[DEBUG] 添加項目依賴項:hamcrest內核到類路徑
[DEBUG] 添加項目依賴項:jackson內核到類路徑
[DEBUG] 添加項目依賴項:jackson綁定到類路徑
[DEBUG] 添加項目依賴項:jackson對類路徑的註釋
[DEBUG] 添加項目依賴項:hamcrest全部到類路徑
[DEBUG] 添加項目依賴項:log4j-api到類路徑
[DEBUG] 添加項目依賴項:log4j-core到類路徑
線程線程 [test.java._tools.BuildTestEnvironment.main(),5,test.java._tools.BuildTestEnvironment ] 上的[DEBUG] 連接
[WARNING] java.lang. ClassNotFoundException: test.java. _tools.BuildTestEnvironment
在 java.net. urlclassloader$1中運行( URLClassLoader 。java: 366 )
在 java.net. urlclassloader$1中運行( URLClassLoader 。java: 355 )
在 java.security.AccessController.doPrivileged(Native Method )
在 java.net. URLClassLoader.findClass(URLClassLoader.java:354 )
在 java.lang. ClassLoader.loadClass(ClassLoader.java:424 )
在 java.lang. ClassLoader.loadClass(ClassLoader.java:357 )
在 execjavamojo$1.codehaus 。mojo 。exec 。run ( ExecJavaMojo 。java: 281 )
在 java.lang. Thread.run(Thread.java:724 )
[INFO] -------------------------------------------------------------------------
[INFO] 生成失敗
[INFO] -------------------------------------------------------------------------
[INFO] 總時間:2.602秒
[INFO] 完成於:2014-05-15 t14: 38: 50-05: 00
[INFO] final 存儲器:12 m/152m
[INFO] -------------------------------------------------------------------------

时间:原作者:0个回答

...