0

@Autowired アノテーションと @ContextConfiguration および @Category アノテーションを使用するテスト クラスがあります。

日食を実行すると、テストは正常に調整されます。しかし、コマンドラインから実行しようとすると、次のエラーがスローされます。

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 25.690s
[INFO] Finished at: Wed Jun 12 09:56:48 GMT+05:30 2013
[INFO] Final Memory: 31M/81M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-failsafe-plugin:2.14.1:integration-test (default) on project OmnitureSeleniumTests: Execution default of goal org.apache.maven.plugins:maven-failsafe-plugin:2.14.1:integration-test failed: There was an error in the forked process
[ERROR] java.lang.NoSuchMethodError: org.junit.runner.Request.classes(Lorg/junit/runner/Computer;[Ljava/lang/Class;)Lorg/junit/runner/Request;
[ERROR] at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.createReqestAndRun(JUnitCoreWrapper.java:128)
[ERROR] at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.executeEager(JUnitCoreWrapper.java:111)
 [ERROR] at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.execute(JUnitCoreWrapper.java:84)
[ERROR] at org.apache.maven.surefire.junitcore.JUnitCoreProvider.invoke(JUnitCoreProvider.java:138)
[ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[ERROR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[ERROR] at java.lang.reflect.Method.invoke(Method.java:597)
[ERROR] at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray2(ReflectionUtils.java:208)
[ERROR] at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:159)
[ERROR] at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:87)
[ERROR] at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153)
[ERROR] at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:95)
[ERROR] -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginExecutionException

私はjunit 4.8.2とmaven-failsafe-plugin:2.14.1を使用しています

4

2 に答える 2

0

Eclipse とコマンドラインから maven を実行すると、多くの構成/環境の違いが生じる可能性があります。

  1. Maven のバージョン / パス。Eclipse では、実際の Maven バイナリをデフォルトにするか、設定を介して明示的に設定できますが、コマンド ラインでは、OS が PATH 環境変数で使用可能な最初のものを選択します。を使用してMavenのバージョンを確認してくださいmvn -version
  2. Maven ユーザー/グローバル settings.xml。コマンドラインで実行する場合、通常 ~/.m2/settings.xml が使用されますが、これは Eclipse 設定で明示的にオーバーライドできます
  3. Maven ローカル リポジトリ キャッシュ。1 および/または 2 に不一致がある場合、別のローカル リポジトリ キャッシュになる可能性があります。アーティファクトの配布が正しくないと、異なるローカル リポジトリ キャッシュに対してビルドを実行すると、ビルドが失敗する可能性があります。
  4. Eclipse Maven は、コマンド ラインとは異なるバージョンの JVM を使用できます。
于 2013-06-12T04:49:24.690 に答える
0

maven-failsafe-plugin のバージョンを 2.6 に変更しましたが、現在はコマンド ラインから正常に動作しています :)

于 2013-06-12T04:57:39.670 に答える