【发布时间】:2020-07-09 22:43:36
【问题描述】:
所以,我正在尝试将工具从 Java 8 迁移到 Java 11。
我做了第一步让它在没有模块的情况下工作并且代码编译成功。
现在我正在尝试添加 module-info.java,但由于我的工具中使用的库,我首先遇到了问题。有些已经与 Java 11(例如 Lombok)兼容,但有些则不兼容,因此我尝试使用 requires 和 artifactId 名称来导入它们。
但是由于我的 Maven 模型和 Maven 模型构建器依赖关系,我似乎陷入了困境,因为在构建时出现以下错误:
[ERROR] the unnamed module reads package org.apache.maven.model.merge from both maven.model.builder and maven.model
[ERROR] module maven.model.builder reads package org.apache.maven.model.merge from both maven.model.builder and maven.model
[ERROR] module maven.model reads package org.apache.maven.model.merge from both maven.model.builder and maven.model
出现这种错误该怎么办?看来我两者都需要(如果我评论一个或另一个,构建仍然失败)。这是否意味着我无法将模块添加到我的工具中?
注意:库设置为最新版本(即 3.6.3)
【问题讨论】:
-
模块系统不允许拆分包。是否有更新版本的依赖项可以解决问题?
-
我尝试升级到最新版本(3.6.3),但问题仍然存在
-
我也面临同样的问题。我通过排除以下内容进行编译,但它会导致运行时问题,只是想知道是否还有其他模块要排除?实现('org.apache.maven:maven-resolver-provider:3.6.3'){排除组:'org.apache.maven.model.merge',模块:'maven-model-merge'}
-
好吧,我没能解决这个问题,所以我放弃了搬到 JPMS... 真可惜
标签: java java-11 java-module