gpt4 book ai didi

java - 从 ear/lib/jar 中的 ear/war 获取类返回 ClassNotFoundException

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:48:31 28 4
gpt4 key购买 nike

我的项目结构如下。服务器是 Glassfish 4。IDE - netbeans 7.4。项目 temp 被项目 a 使用。

EAR
+ lib/temp.jar
+ a.war

Temp.jar 包含核心类。它们被 war 使用。 Temp.jar 不会从 war 中导入任何文件,而且它对 war 一定一无所知。但是,temp.jar 具有通过反射创建 war 类实例的类(根据 xml 文件)。在这里,我得到了 ClassNotFoundException。如何修复?是否可以修复或我有错误的项目结构?

注意:我没有将 temp.jar 放在 a.war 中,因为可能有不同的 war 文件可以使用这个 jar。

最佳答案

我找到了答案。

如果我们将 jar 放入 ear/lib 文件夹中,则可以访问其中的类,但它们无法访问 lib 之外的类(在这种情况下,无需向 war list 文件中添加任何内容)。

如果我们将 jar 放在 ear 的根目录或任何其他文件夹 ear/bum 中,那么这些 jar 的类就可以访问 war 类。

所以我得出结论,/lib 是单向的,任何其他都是双向的。

希望它能为人们节省很多时间。

关于java - 从 ear/lib/jar 中的 ear/war 获取类返回 ClassNotFoundException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19946822/

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