Исключение в потоке “основной” java.lang. NoClassDefFoundError: junit/textui/ResultPrinter

Я пытаюсь скомпилировать свой проект Android в Studio Android 0.3.0. Сегодня я получаю следующую ошибку:

Exception in thread "main" java.lang.NoClassDefFoundError: junit/textui/ResultPrinter
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:188)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:113)
Caused by: java.lang.ClassNotFoundException: junit.textui.ResultPrinter
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
... 3 more

Process finished with exit code 1

Выполнение некоторых веб-поисков приводит меня полагать, что эта проблема так или иначе связана с JUnit. Однако я не использую JUnit в своем проекте. Возможно, я непреднамеренно включил некоторую опцию? В этом случае, как я отключаю поблочное тестирование в своем проекте? Какие-либо идеи?

62
задан 22 October 2013 в 15:12

5 ответов

Все ответы хороши -

, Удостоверяются, что у Вас есть sourceSets, зарегистрировали тестовый каталог.

android{
    ...

    defaultConfig {
         ...
         testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }


    sourceSets {
        androidTest {
            java.srcDirs = ['src/androidTest/java']
        }
    }
}

dependencies{
    ... 
    androidTestCompile 'junit:junit:4.12'
    androidTestCompile 'com.android.support.test:runner:0.5'
}
0
ответ дан 31 October 2019 в 14:12

У меня дважды была эта проблема после изменения приблизительно build.gradle плагины и зависимости вокруг.

Просто выключающий и включающий Studio Android снова зафиксировал его для меня (версии 2.1.2 и 2.2).

0
ответ дан 31 October 2019 в 14:12

Обычно эта проблема вызывается из-за неправильного тестового типа: Junit вместо Тест Android Select Android test instead of JUnit Select Android test instead of JUnit

27
ответ дан 31 October 2019 в 14:12

Для стандартных тестов JUnit Вы пропускаете библиотеку JUnit, пытаетесь добавить это в build.gradle:

dependencies {
    ...
    testCompile 'junit:junit:4.12'
    ...
}

И удостоверяются, что Вы помещаете тесты в "тестовую" параллель каталога к "основному" пакету (тесты инструментария входит в "androidTest", но это - другая установка).

8
ответ дан 31 October 2019 в 14:12

В моем Выполнении/Настройках отладочного процесса у меня был MyTest под AndroidTests и под JUnitTests. MyTest под AndroidTests был настроен правильно, но я все еще получил 'NoClassDefFoundError: junit/textui/ResultPrinter' ошибка. MyTest, на который нажимают, под JUnit и нажатым '-' в верхнем левом углу. Это позволило MyTest пробегать устройство, избавленное от ошибки.

1
ответ дан 31 October 2019 в 14:12

Другие вопросы по тегам:

Похожие вопросы: