我一直将外部jar放在JDK8的jre / lib / ext中 但是,当我将jdk更新为jdk10时,无法在jdk目录中找到jre子目录。因此,我从Oracle下载jre10,结果发现ext目录丢失了……我应该把那些外部jar放在哪里?
答案 0 :(得分:3)
从Migrating to JDK 10 from JDK 8开始不再支持此功能:
已删除扩展机制
在以前的版本中,扩展名 该机制使运行时环境可以查找和 加载扩展类,而无需在类中专门命名它们 路径。从JDK 9开始,如果您需要使用扩展类, 确保JAR文件位于类路径上。
如果java.ext.dirs退出,则Javac编译器和Java启动器将退出 设置了系统属性,或者存在lib / ext目录。至 另外检查平台特定的系统范围目录,指定 -XX:+ CheckEndorsedAndExtDirs命令行选项。这导致 如果目录存在且不为空,则会发生相同的退出行为。 扩展类加载器保留在JDK 9(及更高版本)中 并指定为平台类加载器(请参见 getPlatformClassLoader。)