提问人:TorusWithSprinkles 提问时间:10/16/2020 更新时间:10/18/2020 访问量:545
“Error:(3,19) java: package com.mongodb.client is not visible” - 在 IntelliJ 中将 MongoDB 与 Maven JavaFX 项目连接时出错
"Error:(3,19) java: package com.mongodb.client is not visible" - Error connecting MongoDB with a Maven JavaFX project in IntelliJ
问:
我正在使用 Maven 在 IntelliJ 中处理一个 JavaFX 项目,现在我正在尝试让它连接到 MongoDB。我正在关注MongoDB的官方视频,做同样的事情,这就是我到目前为止添加的内容。对我的 pom 文件的依赖:
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongodb-driver-sync</artifactId>
<version>3.12.7</version>
</dependency>
和连接我的代码:public static void main
public static void main(String[] args) {
String connectionString = "mongodb+srv://admin:[email protected]/<dbname>?retryWrites=true&w=majority";
try (MongoClient mongoClient = MongoClients.create(connectionString)) {
MongoIterable<String> strings = mongoClient.listDatabaseNames();
MongoCursor<String> cursor = strings.cursor();
while (cursor.hasNext()) {
System.out.println(cursor.next());
}
}
launch(); // This launches the JavaFX side of the app
}
这是他们在视频中添加的唯一代码,在此阶段,它应该将所有数据库名称正确打印到控制台。但是,我收到以下 4 个错误:
Error:(3,19) java: package com.mongodb.client is not visible
Error:(4,19) java: package com.mongodb.client is not visible
Error:(5,19) java: package com.mongodb.client is not visible
Error:(6,19) java: package com.mongodb.client is not visible
我错过了什么吗?我找不到有关此特定错误的太多信息,我按照视频说明进行了操作。我真的很感激。
答:
1赞
TorusWithSprinkles
10/18/2020
#1
因此,根据 MongoDB 的这个文档,我发现我必须添加一个模块声明,因为我使用的是 Java 版本 9+。我将其添加到我的module-info.java中,并成功清除了这些错误:
requires org.mongodb.driver.sync.client;
这确实回答了我最初的问题,但是我应该注意,当我尝试运行时,我遇到了一个新错误:
Error:(45, 48) java: cannot access com.mongodb.ConnectionString
如果阅读本文的任何人碰巧在做同样的事情并遇到相同的错误,我将不断更新这篇文章,并提供解决方案或可能的新解决方案(因为我相信这个错误可能与第一个错误有关)。
评论
0赞
clockw0rk
5/6/2022
它仍然告诉“找不到模块”
评论