Intellij “java: package org.junit does not exist”

5

全面披露:我知道这个问题以前已经被问过了,但之前的回答都没有解决我的问题。请不要标记为重复项,请查看此问题中的答案并没有真正解决我的问题。

目前我有三个使用 IntelliJ 的项目,分别是三门不同的大学课程。其中一门课可以正常地进行 JUnit 测试而没有任何问题。在第二个项目中,我没有进行任何 JUnit 测试,因此我不知道它是否可以工作。在我创建的一个新项目中,它根本不起作用,并给出了约 50 个错误,所有错误都与java: package org.junit does not exist相关。

我看到了这个问题,并按照已接受的答案中的步骤尝试修复该问题。我的项目依赖项现在看起来像这样:

enter image description here

我仍然会得到那个错误。我的项目目录如下:

enter image description here

我必须更改.jar文件或 JUnit5.2模块的作用域吗?我的另一个项目中,JUnit 被“接受”,当前列出了JUnit5.0的模块页,并且它显示两次-一次将作用域设置为Compile,一次将作用域设置为Test。JUnit5.0和JUnit5.2之间有很大的区别吗?我是否需要再次添加带有Compile作用域的 JUnit5.2?如果是这样,如何操作?

这个问题也不起作用,因为它与 Android 开发有关,从我所看到的来看,他们的项目设置与我完全不同。


我很乐意帮助您。为了真正了解您所面临的独特情况,您能否在Github上共享您的代码,以便我可以重现问题并提出可能的解决方案? - Dilip Agheda
https://github.com/elkshadow5/stackoverflowtest 我不知道问题是否出在我的代码上,因为我在代码中实现的方式与我的另一个项目完全相同,但那个项目没有错误。 - elkshadow5
3个回答

8

感谢您上传到github。

我将您的项目导入IntelliJ并构建。 我还遇到了约10个关于jUnit的错误。

解决方案: - 转至导入语句,出现错误消息“没有可用的软件包jar文件”。 将光标放在那里,然后按ALT + ENTER。 您将获得以下选项: enter image description here

  • 选择第一个选项,让intelliJ studio添加到类路径中。 您会像这样得到:

enter image description here

enter image description here

之后,构建成功,所有错误都消失了。 此外,我学到了如果手动添加每个软件包,则出错的机会很高。 最好使用maven软件包管理器,将其提供给您想要的软件包,然后它将找出随附的所有依赖项并下载到您的项目中。 此外,这与jUnit版本无关。 任何体面的最近版本都可以。 希望这可以帮助。


5
如果您的项目是一个Maven项目,可能您已经将src文件夹标记为源代码文件夹,而IntelliJ正在尝试编译测试单元。请打开您的模块设置并取消标记src文件夹作为源代码文件夹。

-1

在 build.Gradle 文件的 dependencies 段中使用此代码。

testImplementation 'junit:junit:4.12'
implementation 'junit:junit:4.12'

androidTestImplementation 'com.android.support:support-annotations:28.0.0'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test:rules:1.0.2'


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接