-2

我无法.jar使用 Java 10 或 Java 11 运行档案(它们以 退出NoClassDefFoundError)。同样,我也无法将.jar档案导入 Java 项目;它们出现在 Classpath 中,但 Eclipse 表示无法解析导入。当我降级到 Java 8 时,我能够.jar很好地运行存档,并且它们也可以在任何导入它们的 Java 项目中被识别。

例如:

我正在导入mongo-java-driver-3.8.2Eclipse Photon 上的 Java 项目。我将其添加.jar到项目的类路径(项目 -> 属性 -> Java 构建路径)。但是,Eclipse 输出The import com.mongodb cannot be resolved,如下图所示:

在此处输入图像描述

4

1 回答 1

2

如果默认包包含一个module-info.java文件,那么您使用的是 Java 平台模块系统 (JPMS),您有两个选择:

  • 删除module-info.java以不使用 JPMS 并使用Java 8 中的类路径
  • module-info.java添加行requires mongo.java.driver;以将模块mongo.java.driver(导出包com.mongodb)添加到模块路径(从 Java 9 开始,您可以使用不带module-info.java文件的类路径或带文件的模块路径module-info.java
于 2018-10-16T13:33:32.963 回答