我假设从Java1.8迁移的项目仍然没有模块-info.Java
。这意味着您正在“未命名模块”中编译代码。
未命名模块中的代码“读取”所有可观察到的命名和未命名模块,特别是从JRE系统库中读取模块“java.xml”。这个模块导出类似java.xml.xpath
的包。
此外,在类路径上还有xml-apis.java
,它提供了另一组同名的包(java.xml.xpath
和friends)。它们被称为与未命名模块相关联,就像您自己的代码一样。
(2)解决方案:如果将module-info.java
添加到项目中,您可以通过requires来控制项目读取的模块,或者需要java.xml;
或者需要xml.apis;
(其中“xml.apis”是“xml-apis-1.4.01.jar”的自动模块名)。
(3)解决方案:除了将项目转换为模块之外,还可以通过将java.xml
从可观察的模块集合中排除来避免冲突。在命令行中,这将使用--limit-modules
完成。Eclipse中的等效对话框是“模块化详细信息”,请参见JDT 4.8 new¬eworthy(查找内容选项卡)。由于java.xml
是通过许多其他默认可观察的模块隐式需要的,所以最好将java.base
以外的所有模块从右(“显式包含的模块”)推到左(“可用的模块”)(并有选择地重新添加项目需要的模块)。
PS:Eclipse仍然没有提供理想的错误消息,而不是“不能被解析”,它实际上应该说:“包javax.xml.xpath可以从多个模块访问:javax.xml,
PPS:同样奇怪的是:为什么在类路径上改变JRE和jar之间的顺序(这种顺序不是javac和JEP261所支持的概念)会改变编译器的行为。
编辑:
问题内容: 我正在Eclipse中开发一个Maven项目(分支平台- bom_brussels-sr7)。当我最近尝试切换Java构建路径,为项目JDK 10,Eclipse构建再也找不到类,如,或。似乎只有与XML相关的类会受到影响,主要是受到Maven依赖关系的影响。 从Eclipse尝试Maven构建可以正常工作。假定缺少的类之一上的Ctrl- LeftClick会找到该类并在Eclipse
问题内容: 我是一个初学者,正在学习spring和hibernate(在项目中使用Maven),遇到了这个问题,被困在这里。试图找到解决方案,但最终无处可寻。请帮忙。非常感谢 错误:“找不到“http://java.sun.com/jsp/jstl/core ”的标记库描述符 码: 尝试了在Java构建路径中找不到超类“javax.servlet.http.HttpServlet”中给出的解决方案
我知道关于这个问题还有其他问题,但没有一个解决方案对我有效。我正在使用maven在eclipse中构建一个java项目,我有我的持久性。src/main/resource/META_INF文件夹中的xml文件。但当我尝试安装mvn时,总是会出现以下错误: 从控制台输出来看,这似乎是由以下原因造成的: 这是我的persistence.xml文件: 我试着右键点击项目,并将META_INF文件夹添加到
主要内容:Eclipse 设置Java构建路径Eclipse 设置Java构建路径 在编译 Java 项目以发现依赖类时使用 Java 构建路径。它由以下项目组成 : 源文件夹中的代码。 与项目关联的 Jars 和 classes 文件夹。 此项目引用的项目导出的类和库。 可以使用 Java 项目属性对话框的 Java 构建路径页面查看和修改 java 构建路径。 要打开 Java 项目属性对话框,请在 Package Explorer 视图
设置 Java 构建路径 Java构建路径用于在编译Java项目时找到依赖的类,包括以下几项: 源码包 项目相关的 jar 包及类文件 项目引用的的类库 我们可以通过使用 Java 项目属性对话框中的 Java Build Path(Java 构建路径)选项来查看和修改 Java 构建路径。 Java 项目属性对话框可以通过在 Package Explorer 视图中鼠标右击指定的 Java 项目
我为学校准备了一个Java小项目。我将EclipseNeon与JPA图表编辑器和JavaFX结合使用。问题- 那么,项目怎么可能找不到一个文件,而我没有更改文件夹或文件名。。。或者任何可能与路径有关的东西?我只找到了路径错误的答案,但结构是通过JPA创建的,并且有效,所以我认为这不应该是问题所在。 谢谢你的帮助,如果语法不太好,我很抱歉。