gpt4 book ai didi

java - CLASSPATH 与 java.ext.dirs

转载 作者:太空狗 更新时间:2023-10-29 22:37:13 26 4
gpt4 key购买 nike

有什么理由支持使用(可能很长)CLASSPATH 变量来设置哪些 jars 应该在应用程序运行期间的类路径上,然后使用 java 1.5+ 属性 -Djava。 ext.dirs 指定要搜索的 jar 的整个目录(目录)?

为了让它成为现实生活中的例子,我有一个独立的 java 应用程序,其中包含所有依赖 jar 的 lib 文件夹。到目前为止,启动脚本正在将所有(可能 20 个)jar 一个一个地设置为 CLASSPATH 变量。由于现在我的应用程序存档是由 Maven 生成的,因此我无法提前看到 jar 名称是什么(例如,我更改了 JAR 的版本)。当然,我可以通过启动脚本中的 lib 目录并将在那里找到的所有 jar 再次添加到 CLASSPATH 变量中。或者可能让 maven 为我生成这个脚本。

问题:通过简单地将 java.ext.dirs 属性设置为包含它所包含的内容 + 我的额外 lib 目录来替换所有这些是否合适且合适在我的脚本中?里面有什么注意事项吗?

感谢您的回复。

最佳答案

java.ext.dirs 有一个非常特殊的用途:它用于指定extension mechanism 的位置。从加载类。它用于向 JRE 或其他库(例如 JAI)添加功能。它并不是一种通用的类加载机制。

使用 wildcard character *反而。它是在 Java 6 中引入的,所以很多人还不知道它是可能的。

关于java - CLASSPATH 与 java.ext.dirs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5039862/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com