2016-07-22 7 views
0

を認識されませんこのsrc/main/java/com/lucidtester/junit/runnersの私の唯一のクラス(LucidRunner)上:クラスパス私は私の問題を示し、ここで、プロジェクトの分岐を有していてGradleのプロジェクトで

package org.junit.runner.notification does not exist 
import org.junit.runner.notification.RunNotifier; 

package org.junit.runners does not exist 
import org.junit.runners.BlockJUnit4ClassRunner; 
        ^
package org.junit.runners.model does not exist 
import org.junit.runners.model.FrameworkMethod; 
         ^
package org.junit.runners.model does not exist 
import org.junit.runners.model.InitializationError; 

JUnitのは認識されていないことを意味すると思われます。しかし、IntelliJでは、JUnitをクラスパスに追加しました。エディタは確かにJUnitの機能を自動補完することができます。さらに、Project Explorerの下のExternal Librariesツリーに、JUnit4がライブラリとしてリストされていることがわかります。私は、このコマンドを実行することにより、特定のモジュールにビルドを制限する場合

同じこと

が起こる:

gradle :lucid-junit:build

をこの時点で、私は問題が何であるか全く見当がつかない。私は最小限のクラスしか持たず、ビルドファイル(モジュール内)は正しい依存関係(junit用)を入れています。さらに、build.gradleメインファイルにsubprojectsを使用しています。

この時点で何を確認するかわかりません。 IDEの何もエラーを示していません。私のGradleビルドファイルにエラーを生成するものはありません。しかし、ビルドのライフサイクルがどのように実行されているかについては、クラスパスを認識していないようです。何か面白いものを見つけ

UPDATE

。ビルドファイルを変更した場合、IntelliJはすべてを更新します。その後、私の外部ライブラリにJUnit4が表示されなくなりました。その後LucidRunner.javaファイルが突然発生し、JUnitに関する一連のエラーが発生します。

ですから、Option + Enterを押して「JUnit4をクラスパスに追加」を選択します。

JUnit4が外部ライブラリに追加され、エラーが表示されなくなりました。

しかし、gradle buildコマンドでも同じエラーが表示されます。ビルドファイルを再度変更すると、同じ状況になります。

私は、IntelliJの「再起動」の回答のように試みました。キャッシュを無効にして再起動しても効果はありません。

+0

システム(IDE外)に正しいクラスパスが設定されていますか? – user356540

答えて

0

私は自分の質問に答えているようです。

明快-のJUnitプロジェクトであるbuild.gradleファイルで、私はこのいた:私がしなければならなかった何

dependencies { 
    compile "junit:junit:${junit_version}" 
} 

は、ファイルの先頭に空白行を追加しました。

なぜそれが問題なのか分かりませんが、私がそれをすると突然すべてが機能します。さらに、その空白行があると、私の外部ライブラリでは、単に「JUnit4」ではなく「Gradle:junit:junit:4.12」と表示されます。

最初の空白行を削除すると、問題が再現します。

また、私はこれがなぜ機能するのか分かりませんが、それは絶対に疑いがありません。

関連する問題