无法在 IntelliJ Ultimate 中使用外部依赖项(由 Maven 安装)

Can't use external dependency (installed by Maven) in IntelliJ Ultimate

我创建了一个 pom.xml,其中包含 XML 以导入 JUnit 4。我在 IntelliJ 中打开了项目。它似乎已经下载了外部依赖项,但是当我尝试在 import 语句中使用依赖项时,IntelliJ 无法识别它。

以下是我从一开始就采取的步骤:

  1. 我创建了一个 pom.xml。
  2. mkdir MAVEN
  3. mv pom.xml MAVEN
  4. 打开 IntelliJ
  5. 文件 > 打开 > pom.xml
  6. cd ~/MAVEN
  7. mkdir -p src/main/java
  8. 返回 IntelliJ
  9. 右键单击 src -> 将目录标记为根目录

我相信 Maven 正确导入了所有内容,因为我可以在项目目录中看到 JUnit 作为依赖项:https://imgur.com/TdJq7PK

这是我的 pom.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.company.org</groupId>
    <artifactId>mvn-prac</atifactId>
    <version>1.0-SNAPSHOT</version>

    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency>

    </dependencies>
</project>

当我尝试使用 JUnit 中的常见 class(例如 import org.junit.Test;)时,IntelliJ 无法识别该符号。

我在项目的根目录中尝试了 mvn cleanmvn install,但似乎都没有帮助。

感谢您的帮助。

如果您使用 test 作用域,JUnit 依赖项将仅可用于位于 src/test/java 中的测试,但不适用于 src/main/java 中的 类。

删除 pom.xml 中的 <scope>test</scope> 行或将您的测试移动到正确的测试源根目录。