【问题标题】:Java classpath, jar file with no .jar extension in Weblogic over UnixJava 类路径,在 Unix 上的 Weblogic 中没有 .jar 扩展名的 jar 文件
【发布时间】:2010-12-20 09:29:37
【问题描述】:

如果我将一个名为 libA.jar 的文件放在类路径文件夹中,并将旧文件重命名为:

libA.jar.old

类加载器会加载类吗?

我在 Solaris 8 上使用 weblogic。

谢谢!

乌多

【问题讨论】:

    标签: java jakarta-ee load classpath java-ee-5


    【解决方案1】:

    没有。

    如果您使用的是 Java 5 或更早版本,则必须明确命名所有要加载的类和 jar 文件。显然,由于旧的 libA.jar.old 没有命名,因此不会被加载。

    如果您使用的是 Java 6,情况会有所不同,因为那里存在通配符匹配的概念。

    仍然不会加载非 jar 文件。信息取自official site。引用:

    类路径条目可以包含 基本名称通配符 *,其中 被认为等同于指定 中所有文件的列表 扩展名为 .jar 的目录或 。罐。例如,类路径 entry foo/* 指定所有 JAR 文件在 名为 foo 的目录。

    类路径 仅由 * 组成的条目展开 到所有 jar 文件的列表 当前目录。类路径条目 包含 * 将不匹配类 文件。匹配类和 JAR 单个目录 foo 中的文件,使用 foo;foo/* 或 foo/*;foo。这 选择的顺序决定了是否 foo 中的类和资源是 在 foo 中的 JAR 文件之前加载,或 反之亦然。

    【讨论】:

      猜你喜欢
      • 2015-07-28
      • 2015-08-14
      • 2016-09-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-09
      • 1970-01-01
      相关资源
      最近更新 更多