如何在Java9模块中使用第三方库?
我有一些使用第三方库的java9模块,它不是Java9模块,只是一个简单的实用jar。
但是,编译器抱怨它无法从我的实用程序中找到软件包。
我应该怎么做module-info.java
才能使用我的第三方库?
回答:
您可以将您的库用作 自动模块 。自动模块是没有模块描述符(即module-info.class
)的模块。
但是,您需要指定什么名称来引用自动模块?自动模块的名称是从JAR名称派生的(除非此JAR包含Automatic-Module-
Name属性)。完整的规则很长(请参阅Javadoc
ModuleFinder.of
),为简单起见,您只需从版本名称中删除该版本,然后将所有非字母数字字符替换为点(.
)。
例如,如果要使用foo-bar-1.2.3-SNAPSHOT.jar
,则需要将以下行添加到module-info.java
:
module <name> { requires foo.bar;
}
以上是 如何在Java9模块中使用第三方库? 的全部内容, 来源链接: utcz.com/qa/408089.html