0

我有一个包含所有 java 类的 UberJar,但想用外部 persistence.xml 文件执行这个 jar。根据规范,Hibernate(或任何其他 JPA 提供程序)在类路径上的任何 META-INF 文件夹中查找 persistence.xml 文件,但我无法使用 UberJar 完成这项工作。有任何想法吗?UberJar 的类加载器是否仅限于 jar 文件的内容?

4

2 回答 2

1

-jar命令行选项:

"-jar"使用该选项时,JAR 文件是所有用户类的来源,其他用户类路径设置被忽略

所以,看起来直接的答案是否定的。

您可以编写自己的引导类,该类使用通常的 java 类路径(包括您的 persistence.xml),然后引导 UberJar,尽管您可能正在使用 UberJar 来避免这种情况......

于 2008-10-08T10:57:44.207 回答
0

为了跟进我是如何解决这个问题的,我将 persistence.xml 文件和我的 jar 添加到类路径中,然后指定了主类。我的路径中还有未归档的类,这导致它们覆盖了 jar 设置。

于 2008-10-08T23:39:48.240 回答