2016-03-22 4 views
0

いやを実行している間、私はエラーを取得していますが、コマンドをRestAssured:java.lang.NoClassDefFoundErrorが:COM/jayway/restassured /マッパ/工場/ ObjectMapperFactory

すべての依存関係が明確に定義されています。

> Exception in thread "main" java.lang.NoClassDefFoundError: 
> com/jayway/restassured/mapper/factory/ObjectMapperFactory  at 
> java.lang.ClassLoader.defineClass1(Native Method)  at 
> java.lang.ClassLoader.defineClass(Unknown Source)  at 
> java.security.SecureClassLoader.defineClass(Unknown Source) at 
> java.net.URLClassLoader.defineClass(Unknown Source) at 
> java.net.URLClassLoader.access$100(Unknown Source) at 
> java.net.URLClassLoader$1.run(Unknown Source)  at 
> java.net.URLClassLoader$1.run(Unknown Source)  at 
> java.security.AccessController.doPrivileged(Native Method) at 
> java.net.URLClassLoader.findClass(Unknown Source)  at 
> java.lang.ClassLoader.loadClass(Unknown Source) at 
> sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at 
> java.lang.ClassLoader.loadClass(Unknown Source) at 
> com.jayway.restassured.config.RestAssuredConfig.<init>(RestAssuredConfig.java:41) 
> at com.jayway.restassured.RestAssured.<clinit>(RestAssured.java:423) 
+0

これはエラーです。クラスObjectMapperFactoryはコンパイル時に存在しますが、実行時には使用できません。だから、あなたのビルドパスにあるかどうかを調べることができます – Lathy

+1

何らかの理由で依存関係にそのパッケージのより多くのバージョンが存在する可能性があります(例えば、推移的依存性を介して)。ビルドツールでプロジェクトの依存関係ツリー全体を表示するコマンドを実行し、このパッケージのバージョンが2つ以上存在しないかどうかを確認してください。 – OlgaMaciaszek

+0

あなたがインポートしていないパッケージに属するクラスを使用している可能性があります。 –

答えて

0

があなたのpom.xml内「提供」スコープを持つ依存関係を探して試してみて、スコープをデフォルトにそれを変更助けてください(コンパイル)。

0

この種の例外は、依存関係ツリーに複数のバージョンのアーティファクトが存在する(たとえば、推移的な依存関係を持つ)結果として、しばしばスローされます。 。これを解決するには、ビルドツールでプロジェクトの依存関係ツリー全体を表示し、そこに存在するアーティファクトのバージョンが2つ以上ないかどうかを確認するコマンドを実行することをお勧めします。