如何创建引用类路径中其他 jar 的空 jar 文件

发布于 2024-09-15 19:56:13 字数 199 浏览 8 评论 0原文

您好,

我的 j2ee 应用程序依赖于大量的 jar 文件,因此我想创建一个单独的 jar 文件,其清单属性引用类路径中的这些 jar 文件。 然后我会将这个文件放在 glassfish lib 目录中,以便提到的 jar 成为应用程序的类路径中。

唯一的问题是我不知道如何创建这个单一的 jar 文件。

建议?

问候

HI,

I have a large number of jars that my j2ee app depends on, so I want to create a single jar file with manifest attribute referencing those jar files in classpath.
Then I will place this file in glassfish lib dir so that jars mentioned become in classpath for application.

the only problem is I dont know how to create this single jar file.

suggestions ?

regards

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

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

发布评论

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

评论(2

扭转时空 2024-09-22 19:56:13

jar 程序(用于创建 jar)有一个 -m 条目,用于指定清单文件。

在此清单文件中,您可以使用 Class-Path 属性指定其他 jar 文件的位置。

请参阅此处: http://download.oracle.com/javase /1.3/docs/guide/jar/jar.html

我个人没有尝试过这个,所以我不知道这会有多成功。

如果您担心这一点,您可能只想创建一个包含所有其他 jar 文件的大 jar 文件。我也不知道是否会推荐这个解决方案。

The jar program (used to create jars) has a -m entry used to specify a manifest file.

In this manifest file, you could specify the location of other jar files with the Class-Path attribute.

See here: http://download.oracle.com/javase/1.3/docs/guide/jar/jar.html

I personally haven't tried this, so I don't know how successful this would be.

You might want to just create a large jar file that contains all of your other jar files if you are concerned about this. I don't know if I would recommend this solution either.

假情假意假温柔 2024-09-22 19:56:13

你所描述的应该可以正常工作。当加载在其manifest.mf 中具有类路径条目的jar 时,所有引用的jar 都将添加到类路径中。如果您碰巧使用 Maven,他们有一种非常简单的方法将类路径添加到 jar 生成的清单中。

maven 项目的所有依赖项都将添加到类路径条目中。

通过 maven 添加类路径。

如果您选择使用jar 程序,您可以根据上面链接中的示例对清单进行建模。

Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Created-By: Apache Maven
Built-By: ${user.name}
Build-Jdk: ${java.version}
Class-Path: plexus-utils-1.1.jar commons-lang-2.1.jar

What you are describing should work fine. When a jar is loaded that has a Class-Path entry in it's manifest.mf, all referenced jars will get added to the class path. If you happen to be using maven, they have a very simple way of adding the classpath to a jar's generated manifest.

All dependencies of the maven project will get added to the Class-Path entry.

Adding a classpath via maven.

If you choose to use the jar program, you can model your manifest off of the example from the above link.

Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Created-By: Apache Maven
Built-By: ${user.name}
Build-Jdk: ${java.version}
Class-Path: plexus-utils-1.1.jar commons-lang-2.1.jar
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文