【发布时间】:2019-08-28 13:42:03
【问题描述】:
我对 java 很陌生。从昨天开始!我安装了eclipse并在其中导入了spring库。但是发生了一个奇怪的问题。在import 语句中,有一个错误告诉The type org.springframework.context.ApplicationContext is not accessible。运行项目后发生另一个错误(与同一主题 ApplicationContext cannot be resolved to a type 相关)。
无论如何!我很困惑。我花了一天时间。搜索诸如 stackoverflow 和谷歌搜索之类的论坛并没有解决我的问题。突然,我在 Eclipse 中看到一条弹出消息,提示了一些解决方案。忽略其中一些毫无价值的是将模块添加到module-info.java 文件。难以置信地解决了这个问题!最奇怪的是,我从未在相关论坛中看到过这个解决方案!最烦人的是,如果我从来没有看到那个弹出窗口怎么办?我在哪里做错了?为什么互联网上没有这个解决方案?
非常感谢!
【问题讨论】:
-
谢谢!我认为虽然问题是相关的,但它们是不同的。
-
JPMS(= 有一个
module-info.java文件)是模块化的一种方式(在编译时解决,而 OSGi 中的模块/包可以在运行时启动和停止)。使用 JPMS 时,您可以通过jlink构建一个带有嵌入式 Java VM 的 Java 应用程序,其中包含最少的而不是整个系统库。这样可以节省一些磁盘空间,并且应用程序启动得更快一些。如果你不使用jlink,唯一的好处是你明确定义了依赖关系,防止意外使用来自不需要的模块的类。 -
@Amin.Qarabaqi 使用 JPMS(= 有一个
module-info.java文件)时,您必须将库添加到模块路径,而不是类路径。 JPMS 是可选的。我建议删除module-info.java文件。如有需要,您可以稍后再创建。