在Linux中,如何使用外部jar文件执行Java jar文件?

发布于 2024-11-05 03:24:17 字数 39 浏览 0 评论 0原文

在Linux中,如何使用外部jar文件执行Java jar文件?

In Linux, how to execute Java jar file with external jar files?

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

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

发布评论

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

评论(2

童话里做英雄 2024-11-12 03:24:17

使用 -cp 标志:

java -cp /path/to/somefolder/*.jar:/path/to/otherfolder/*.jar com.YourMainClass

或者将 Class-Path: 标头添加到 jar 的清单中(请参阅 Jigar 的回答)


注意其他回答者使用 java -jar-jar 标志停用标准 -cp 标志和 CLASSPATH 环境变量,因为它从JAR 清单。任何结合 -jar-cp$CLASSPATH 的答案都不起作用。

这些信息隐藏得很好,但我终于找到了参考:

-jar
执行封装在 JAR 文件中的程序。第一个参数是
JAR 文件的名称而不是
启动类名。为了这个
工作的选择,清单
JAR 文件必须包含一行
形式主类:类名。这里,
类名标识具有
public static void main(String[]
args)
方法作为您的
应用程序的起点。请参阅
Jar 工具参考页面和 Jar
Java 教程的踪迹
有关使用 Jar 的信息
文件和 Jar 文件清单。 当你
使用此选项,JAR 文件是
所有用户类别的来源,以及其他
用户类路径设置将被忽略。

来源: java - Java 应用程序启动器

Either use the -cp flag:

java -cp /path/to/somefolder/*.jar:/path/to/otherfolder/*.jar com.YourMainClass

Or add a Class-Path: header to your jar's manifest (see Jigar's answer)


Note to others who answered with java -jar <etc>: The -jar flag deactivates the standard -cp flag and CLASSPATH environment variable, because it retrieves the classpath from the JAR manifest. Any answer that combines -jar and either -cp or $CLASSPATH will not work.

This information is well-hidden, but I finally found a reference:

-jar
Execute a program encapsulated in a JAR file. The first argument is the
name of a JAR file instead of a
startup class name. In order for this
option to work, the manifest of the
JAR file must contain a line of the
form Main-Class: classname. Here,
classname identifies the class having
the public static void main(String[]
args)
method that serves as your
application's starting point. See the
Jar tool reference page and the Jar
trail of the Java Tutorial for
information about working with Jar
files and Jar-file manifests. When you
use this option, the JAR file is the
source of all user classes, and other
user class path settings are ignored.

Source: java - the Java application launcher

一枫情书 2024-11-12 03:24:17
java -jar /path/to/externalJarFile.jar

更新

您可以使用 Class-Path: 标头在清单中添加所需的库

,例如:

Class-Path: MyUtils.jar

See

java -jar /path/to/externalJarFile.jar

Update

You can add the required library in manifest with Class-Path: header

For example :

Class-Path: MyUtils.jar

See

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