java - 尽管一切似乎都已就位,但未找到模块

标签 java intellij-idea maven-3

(警告:我是一个十足的 Java 新手!)

此时我只想导入 com.mongodb.*。但这失败了,我不明白为什么。我使用 Intellij CE 和 Maven 进行构建。

Java 代码:

package com.tengen;

import com.mongodb.*;

/**
 * Created by raffael on 04.06.14.
 */
public class HelloWorldMongoDBStyle {
    public static void main(String[] args) {

    }
}

(如果我评论 com.mongodb.* 的导入,那么 make 过程/编译工作正常 - “编译成功完成”)

错误信息:

/home/raffael/M101J/src/main/java/com/tengen/HelloWorldMongoDBStyle.java
Error:(3, 1) java: package com.mongodb does not exist

POM的相关部分:

  <dependencies>
    <dependency>
      <groupId>org.mongodb</groupId>
      <artifactId>mongo-java-driver</artifactId>
      <version>2.11.4</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

奇怪的是,Intellij 成功下载并集成了该模块:

enter image description here

enter image description here

我还可以确认该 jar 位于库设置假定的位置,并且它包含一个包含大量类文件的文件夹 com/mongodb/。

知道问题可能是什么或如何解决吗?

最佳答案

这可能是一个复制错误: 您有一个测试范围。

<scope>test</scope>

这意味着仅在测试包 (src/main/test) 中允许导入。用于单元测试。 删除该行将给出整个范围。

关于java - 尽管一切似乎都已就位,但未找到模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24048103/

相关文章:

java - 如何优先使用相同id的spring bean?

java - Log4j configureAndWatch() 产生数千个线程

java - 无法在 Intellij 中编译 - 错误 :java: exporting a package from system module jdk. 不允许使用 --release 编译器

java - 为什么 IDEA 忽略我的 testng 测试?

java - "Find usages"作为 IntelliJ 插件的功能

neo4j - 找不到 org.neo4j :neo4j-cypher-dsl:jar:2. 0.1 的依赖项

java - 使用泛型转换 Java 集合的正确方法签名

java - 如何使用 Maven 在 Heroku 上运行测试

java - 如何在 IntelliJ Idea 中添加远程 Maven 存储库?

java - 如何将 gradle 模块集成到 Maven 项目中?