web-dev-qa-db-ja.com

Mavenエラー:パッケージorg.junitは存在しません

Mavenでjavadocを作成しようとしていますが、失敗します。検証を行うときにも失敗します。

mvn verify

次のエラーが表示されます。

(...)
    [INFO] -------------------------------------------------------------
    [ERROR] COMPILATION ERROR : 
    [INFO] -------------------------------------------------------------
    [ERROR] /home/miquel/creaveu/createOmegaMatrix/src/main/Java/edu/url/salle/gtm/hnm/dataStructures/HFrame.Java:[6,23]
package org.junit does not exist
    [ERROR] /home/miquel/creaveu/createOmegaMatrix/src/main/Java/edu/url/salle/gtm/hnm/dataStructures/HFrame.Java:[6,0]
static import only from classes and interfaces
    (···)

私のpom.xmlファイルには、次の行があります。

<dependency>
  <groupId>org.junit</groupId>
  <artifactId>junit</artifactId>
  <version>4.8.2</version>
  <scope>test</scope>
</dependency>

私のローカルリポジトリにはjunit jarファイルが含まれています:

miquel@ubuntu:~/creaveu/createOmegaMatrix$ ls -l /home/miquel/.m2/repository/org/junit/junit/4.8.2/
total 248
**-rw-r--r-- 1 miquel miquel 237344 2012-09-13 11:01 junit-4.8.2.jar**
-rw-r--r-- 1 miquel miquel    236 2012-09-13 11:13 junit-4.8.2-javadoc.jar.lastUpdated
-rw-r--r-- 1 miquel miquel      0 2012-09-13 11:13 junit-4.8.2-javadoc.jar-not-available
-rw-r--r-- 1 miquel miquel    458 2012-09-12 18:35 junit-4.8.2.pom
-rw-r--r-- 1 miquel miquel    236 2012-09-13 11:13 junit-4.8.2-sources.jar.lastUpdated
-rw-r--r-- 1 miquel miquel      0 2012-09-13 11:13 junit-4.8.2-sources.jar-not-available
-rw-r--r-- 1 miquel miquel    163 2012-09-13 11:22 _maven.repositories
miquel@ubuntu:~/creaveu/createOmegaMatrix$

コードに問題はありません。ラップトップではアクセスできませんが、次を実行します。

mvn javadoc:javadoc
mvn verify

問題なく、またテストはEclipse IDEで機能します。

68
theme

junitクラスのみ(src/test/Javaにあるもの)に対してtest依存関係を宣言しましたが、mainクラス(にあるもの)で使用しようとしています。 src/main/Java)。

メインクラスで使用しないか、<scope>test</scope>を削除してください。

134
Andrew Logvinov

次のコード行を挿入して、このエラーを修正しました。

<dependency>
  <groupId>junit</groupId>     <!-- NOT org.junit here -->
  <artifactId>junit-dep</artifactId>
  <version>4.8.2</version>
</dependency>

<dependencies>ノードに。

詳細は以下を参照してください: http://mvnrepository.com/artifact/junit/junit-dep/4.8.2

27

eclipseを使用している場合、POM依存関係とjunitのEclipseビルドパス依存関係を監視します

junit4 Eclipseの使用を選択した場合、org.junitパッケージを使用してTestCaseを作成しますが、POMはデフォルトでJunit3(junit.frameworkパッケージ)を使用します。

see JUNIT conflict

POMファイルのJunit依存関係をJunit4に、またはEclipse BuildPathをJunit3に更新するだけです

15
Grubhart

私の場合、犯人はpom.xml内のメインとテストのソースフォルダーを区別していません(Eclipse mavenプロジェクトによって生成された)

<build>
    <sourceDirectory>src</sourceDirectory>
    ....
</build>

Pomファイルのデフォルトのソースフォルダー設定をオーバーライドする場合、メインおよびテストソースフォルダーを明示的に設定する必要があります!!!!

<build>
    <sourceDirectory>src/main/Java</sourceDirectory>
    <testSourceDirectory>src/test/Java</testSourceDirectory>
    ....
</build>
4
nix