可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
Tried out the suggestions on this post, but I still get the error:
!!! JUnit version 3.8 or later expected:
java.lang.RuntimeException: Stub!
at junit.runner.BaseTestRunner.<init>(BaseTestRunner.java:5)
at junit.textui.TestRunner.<init>(TestRunner.java:54)
at junit.textui.TestRunner.<init>(TestRunner.java:48)
at junit.textui.TestRunner.<init>(TestRunner.java:41)
Process finished with exit code -3
Not sure what to do from here. Tried reorganizing the order of the Junit dependency. No luck, anyone else get this issue?
Android Studio V. 1.2.1.1
回答1:
Solved the issue. I was running the JUnit tests as a standard "JUnit test" in Android Studio
. I fixed the issue by resetting the configuration as a Android Test
.
回答2:
I solve this problem by moving "testCompile 'junit:junit:4.12'" to the first order in build.gradle dependency block
回答3:
Running into this when opening an old project into latest Android Studio 2.3 after it auto-updated the project.
Android Studio supports "Android JUnit" tests which should run using the current host JRE and properly support JUnit 4+. The error is due to the wrong JRE being used.
Solved by using Edit Configuration > select the Android JUnit configuration > edit the JRE. Select any choice, use Apply, then change it back to "Default (Android Platform)" for it work.
回答4:
In my case I just forgot that I've changed the build variant to "release". Switching back to "debug" fixed everything. FML.
回答5:
The below fix is a work around and a repetitive task you need to perform on every new class that you create. I have used Gradle for my project on Android Studio.
Step 1:
Go to Run-> Edit Configurations
Option
Step 2:
For each JUnit test configuration, change and add the below into the fields:
a) JRE: Default is selected. Change it to the JRE version you have on your PC which you get as an option in the drop-down. As of today, its 1.8
b) Before launch field: Click on '+', select your module and add task as "clean compileTestJava". Move it to top in the list
JUnit test configuration
Step 3: Apply Changes and now run your java class.
回答6:
Running an "Android JUNit" config and having JUnit 4.12 in gradle did not help to resolve this.
I needed to select JRE
to Android API 27 Platform
in the run config manually instead of "Default" to resolve the issue.
回答7:
I was having the same error and I fixed it by updating JRE value under "Edit Configurations..." in Android Studio, I used API 28 instead and then it worked. Please check the image for your reference...
![](https://www.manongdao.com/static/images/pcload.jpg)
回答8:
I was also getting similar error when I added new project to workspace. May be they(new Project) would have upgraded Junit version or manadated that project should always use specific version.
In this cases, I closed project(all) along with original workspace and opened in new one.
回答9:
I've managed to solve it with simply editing the project's app.iml and moving order entry after from bottom:
<orderEntry type="library" exported="" scope="TEST" name="junit-4.12" level="project" />
回答10:
To solve this issue, I set "JRE" to "1.8". This is Under "Edit Configurations"