可以从JDK 11模块系统中的多个模块访问软件包。

时间:2019-05-29 04:35:39

标签: java struts2 java-11 java-module module-info

我们正在使用Zulu JDK 11,并且遇到了问题。可从多个模块test1.module,test2.sample访问com.sample.test软件包。

下面是示例项目的git网址和屏幕截图,供您参考。

https://github.com/kkvaranasi88/test1.git

1 个答案:

答案 0 :(得分:0)

一个简单的解决方案是将第二个模块const regex = /(.+?)\s+CO\s+(['"].+?['"])([(\[{]).+?([)\]}])/mg; const str = `3M CO 'A'(MINNESOTA MINING AND MANUFACTURING COMPANY) 3M CO 'A'[MINNESOTA MINING AND MANUFACTURING COMPANY] 3M CO 'A'{MINNESOTA MINING AND MANUFACTURING COMPANY} 3M CO "A"{MINNESOTA MINING AND MANUFACTURING COMPANY}`; let m; while ((m = regex.exec(str)) !== null) { // This is necessary to avoid infinite loops with zero-width matches if (m.index === regex.lastIndex) { regex.lastIndex++; } // The result can be accessed through the `m`-variable. m.forEach((match, groupIndex) => { console.log(`Found match, group ${groupIndex}: ${match}`); }); }中的软件包重命名为tes-2,然后将模块描述更新为

com.sample.another.test

,一切都会正常进行。

已经说过,失败的原因是没有两个模块应该导出相同的module test2.sample { exports com.sample.another.test; requires transitive test1.module; } ,以使它们在冲突时都在模块层中得到解决。