【问题标题】:Cannot resolve @org.unit.Test in IntelliJ Idea无法在 IntelliJ Idea 中解析 @org.unit.Test
【发布时间】:2021-12-29 16:02:19
【问题描述】:

这就是 pom.xml 包含的内容:

    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.13.2</version>
        <scope>test</scope>
    </dependency>

这是实际的测试代码:

import org.junit.Assert.*; // Cannot resolve symbol 'Assert'

public class CalculatorTest {

    @org.junit.Test // Cannot resolve symbol 'Test'
    public void add() {
        Assert.assertEquals(5.0, 5.0, 0.01); // Cannot resolve symbol 'Assert'
    }
}

Building Project 只是说它不能对符号“断言”进行微调。 我试过 Alt+Enter -> Add 'JUnit4' to classpath 但它只会使 pop.xml 中的依赖加倍。

【问题讨论】:

  • 你试过File-&gt;Invalidate Caches然后选中除Ask before downloading...Invalidate and Restart之外的所有框?
  • 项目是否从命令行构建? mvn clean package。项目导入是否完成且没有错误?您是否在 Project 视图的 External Libraries 节点中看到 JUnit 库?您的源文件是否位于src/test/java 而不是src/main/java
  • @ritratt 成功了!我不知道如何标记正确答案,但谢谢!

标签: maven intellij-idea junit junit4 assert


【解决方案1】:

试试这个(它似乎按照 OP 的评论工作):

  1. File-&gt;Invalidate Caches
  2. 选中除Ask before downloading... 之外的所有框
  3. Invalidate and Restart

【讨论】:

  • 在这种情况下,使缓存失效真的很奇怪,因为它通常在编辑器显示错误而代码构建时没有错误的情况下有所帮助。 OP 说构建也失败了,这通常表明依赖项、源布局或其他一些 Maven 导入特定错误存在问题,并且这些问题无法通过使缓存无效来解决。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-17
  • 1970-01-01
  • 2014-10-24
  • 2011-09-09
相关资源
最近更新 更多