我正在尝试模块化JHipster 5(Spring Boot 2)应用程序,但我遇到了拆分包问题。
在module-info.java中,我有以下冲突的自动模块:
requires problem.spring.web;
requires problem;
requires jackson.datatype.problem;
当我使用Maven构建项目时,由于包名org.zalando.problem
的冲突,我收到了几个错误:
error: the unnamed module reads package org.zalando.problem from both problem and jackson.datatype.problem
error: module problem.spring.web reads package org.zalando.problem from both jackson.datatype.problem and problem
我想知道如何解决这个问题。我是否还要等待第三方库模块化?什么是解决这场冲突的好方法?
This article解释了如何解决Split Packages问题。我按照here的说明,在构建时使用jsr305
参数解决了java.xml.ws.annotation
和--patch-module
之间的拆分包。但是当我为这些包尝试相同时,项目没有编译。
此项目的来源可在GitHub
上找到答案 0 :(得分:0)
如果您想使用将包拆分为模块的JAR,--patch-module
是唯一的方法,但这是一个艰难的方法。除了修补之外,您还需要制作模块图的其余部分。假设您使用 start.up 的内容修补模块 megacorp ,然后:
--add-reads
--add-reads
这可能非常复杂,特别是如果你在途中与Maven战斗。你确定,没有办法简单地合并两个工件吗?
如果没有,我会说这个项目可能还没有为模块化做好准备。