类路径和认可目录之间的区别

发布于 2024-07-09 20:30:46 字数 119 浏览 12 评论 0原文

有谁知道将适当的 JAR 文件(例如 Apache XALAN)添加到 JRE 认可的目录与将其添加到应用程序的类路径之间有什么区别?

是否可以获取可添加到认可库中的 jar 文件,并将其添加到类路径中?

Does anyone know what the difference is between adding an appropriate JAR-file (eg. Apache XALAN) to a JRE's endorsed directory and adding it to the application's classpath?

Is it possible to take a jar-file that can be added to the endorsed lib and instead add it to the classpath?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

人间不值得 2024-07-16 20:30:46

从技术上讲,您可能可以做到这一点,但不同之处在于,认可目录中的 jar 文件是由引导类加载器加载的,该类加载器可能与从类路径加载 jar 的类加载器不同。

Xerces 和 Xalan XML 实现存在一个典型的 XML 问题,这些实现已在认可目录中。 由于较新的应用程序有时需要两个库的较新版本,并且这些类具有相同的名称,因此存在类路径问题。

您可以替换认可目录中的 Xerces 和 Xalan 库(备份旧的库!),但这可能会搞砸使用相同 JRE 安装的其他应用程序。

我什至在 1 个应用程序中看到过这个问题,其中一个库依赖于一个版本,而另一个库依赖于 xerces 的另一个版本。 非常麻烦,而且没有“通用方法”,或者至少我没有找到。

谷歌很容易找到一些关于这方面的有趣文章,尝试找到最适合您的情况或问题的文章。

Tecnically you probaly can do that, but the difference is that the jar files in the endorsed directory are loaded by the bootstrap classloader, which is probably not the same classloader as the one that loads your jars from the classpath.

There is a classic XML problem with the Xerces and Xalan XML implementations which are out in the endorsed directory. Because newer applications sometimes require newer versions of both libraries, and the classes have the same names, there is a classpath problem.

You can replace the Xerces and Xalan libraries in the endorsed dir (backup your old ones!) but that can possibly screw up other applications which use the same JRE installation.

I've even seen this problem within 1 application where one library depends on one version, and another library depends on another version of xerces. Very troublesome, and there's no "general approach" to this, or at least none that I found.

There are some interesting articles easily found by Google on this, try to find one which best matches your situation or problem.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文