Maven 在 M2_REPO 目录中创建子文件夹

Maven creates sub folders in M2_REPO Directory

在 运行 Maven - 清理之后,我在 M2_REPO 文件夹中看到了子文件夹。 junit.jar 与其他一些文件一起在 M2_REPO/junit/junit/4.11/ 中单独创建。由于此子文件夹结构,eclipse 无法识别 junit.jar 文件。我错过了什么?

Maven 在第一次尝试获取这些工件时正确地创建了这些目录。

要集成 maven 和 eclipse,请尝试 运行 mvn eclipse:eclipse

这应该能让 eclipse 看到 maven 已经下载的 jars。

您正在查找错误的目录。 Eclipse不应该直接从这个目录读取jar,它是maven管理的本地缓存。

pom.xml 是您应该放置依赖项的地方,然后 eclipse 将使用 maven 库获取所需的 jar 文件,将其放在构建路径中,并可能将其缓存在您所在的目录中看着。

请注意,如果您想要 junit jar 文件用于测试目的,src/main/java 中的典型文件将看不到它,因为测试源代码进入 src/test/java.

这意味着 Maven(通过库)(至少)提供了两个类路径。一种用于典型编译,一种用于测试编译和执行。添加 标记部分将其放在编译和 运行 路径上;但是,要使其 "test only" 你需要一个嵌套的 标签。

这是本地 M2 存储库的路径,子文件夹结构正是它应该的样子。 确保通过

将 eclipse 中的项目作为 Maven 项目导入
File -> Import -> Maven -> Existing maven project