从 Java 9 开始,javax.smartcardio 库发生了什么变化?是否有替代方法或某种方法可以在 JAR 中获取它?
2 回答
在网上搜索了几个小时后,感谢上面的答案,据我了解,Java 9 及更高版本是模块化的,这是几年前计划的语言改进。此外,在新的 Oracle 规则更新后,一些包从 SE 移动到了 EE 版本。
该模块smartcardio
现在是可选的,但仍包含在 SE 中。所以如果你想使用它,你必须在module-info.java
.
例子:
我在我的 Maven 项目中创建了这个文件:
src/main/java/com/module-info.java
module com.chema.nfc_rfid_reader_writer {
requires java.smartcardio;
exports com.chema.nfc_rfid_reader_writer;
}
就这样
https://stackoverflow.com/a/59477660/7287324 https://www.oracle.com/corporate/features/understanding-java-9-modules.html
https://docs.oracle.com/en/java/javase/11/docs/api/index.html https://docs.oracle.com/en/java/javase/11/docs/api/java.smartcardio /javax/smartcardio/package-summary.html
java成为“模块化开发”之后,javax.smartcardio
也进行了模块化。
如果要使用之后的包java 9
,请创建module-info.java
.
请看图片。
或者您可以将编译器版本降级为JDK 1.8
: