我的项目依赖于 Netty Epoll 传输。这里是依赖:
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-transport-native-epoll</artifactId>
<version>${netty.version}</version>
<classifier>${epoll.os}</classifier>
</dependency>
此依赖项的自动生成的模块名称是:
netty.transport.native.epoll
由于native
Java 9 中保留了关键字,因此我无法将此模块作为依赖项添加到我的项目中:
module core {
requires netty.transport.native.epoll;
}
由于:
module not found: netty.transport.<error>
此外,jar 工具--describe-module
报告以下内容:
无法为以下各项派生模块描述符:netty-transport-native-epoll-4.1.17.Final-SNAPSHOT-linux-x86_64.jar netty.transport.native.epoll:无效的模块名称:'native' 不是 Java 标识符
有什么解决方法吗?(当然,“发布正确的网络工件”除外)。
编辑:
作为维护者的快速修复 - 您可以添加下一行来构建:
<manifestEntries>
<Automatic-Module-Name>netty.transport.epoll</Automatic-Module-Name>
</manifestEntries>