如何在 Linux 终端中创建并执行 .Jar 文件?如何在 Linux 终端中创建并执行 .Jar 文件?如何在 Linux 终端中创建并执行 .Jar 文件?如何在 Linux 终端中创建并执行 .Jar 文件?
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

如何在 Linux 终端中创建并执行 .Jar 文件?

发表 admin at 2025年2月28日
类别
  • 未分类
标签

在 Linux 中创建和执行 .jar 文件是一个简单的过程,它将 Java 源代码的编译以及类文件和资源打包到单个文件中。使用终端,您可以轻松编译代码、创建 .jar 文件、使其可执行,并轻松运行 Java 应用程序。

JAR 格式(也称为 Java ARchive)提供了一种灵活且高效的方法,可将 Java 类文件、资源和元数据打包到单个与平台无关的文件中。这种格式的目的是简化 Java 运行时的分发和部署过程,同时还提供几个关键优势,例如增强的安全性、压缩以加快下载速度、支持包密封和版本控制以及可移植性。此外,JAR 文件还可以用于打包 Java 扩展。

在本文中,我们将引导您完成创建简单 Java 应用程序的过程,然后演示如何将其组装成 JAR 文件,以便为分发做好准备。最后,我们将向您展示如何使用 java 命令行工具和 -jar 标志从 Linux 终端运行 JAR 文件。需要注意的是,您需要安装 java 命令行工具以及 -jar 标志来执行 JAR 文件中封装的程序。使用此标志时,指定的 JAR 文件将成为所有用户类的源,并且忽略任何其他类路径设置。

  • 首先,我们将首先创建一个包含 main 方法的基本 Java 类。该 Java 类将作为示例演示在 Linux 终端中创建和执行 .jar 文件所涉及的步骤。在本例中,我们将 Java 应用程序命名为“MyApp”。

$ vim MyApp.java
  • 将以下代码合并到 MyApp.java 文件中。

public class MyApp{
	public static void main(String[] args){
		System.out.println("My Java Applicatoion");
	}
}
  • 编译 Java 源代码后,下一步是借助 javac 和 jar 实用程序将其打包成 JAR 文件,如前面的步骤所述。

$ javac -d . MyApp.java
$ ls
$ jar cvf myapp.jar MyApp.class
$ ls

或者

javac MyApp.java
jar cf myapp.jar MyApp.class
chmod +x myapp.jar
java -jar myapp.jar
  • 现在 myapp.jar 文件已生成,可以使用简单的“java”命令运行它,如以下步骤所示。

$ java -jar myapp.jar

no main manifest attribute, in myapp.jar

上一步中遇到的错误凸显了在 .jar 文件中拥有正确清单的重要性。 JVM 需要指定一个主类,作为应用程序的入口点。如果没有此信息,JVM 无法在 .jar 文件中找到运行应用程序所必需的 main 方法。要解决此错误,必须将 Main-Class 属性添加到指定应用程序主类的清单文件中。该行的格式应为“Main-Class: classname”,其中 classname 是主类的完全限定名称。通过在清单中包含这些信息,JVM 将准确地知道在哪里可以找到 main 方法,从而使应用程序能够顺利运行。

  • 该错误的解决方案在于更新 JAR 存档以包含清单属性和代码。这可以通过创建一个manifest.mf 文件来完成,该文件将用作JAR 文件的蓝图。

$ vim manifest.mf

“为了将必要的清单属性添加到 JAR 文件中,只需将指定的行复制并粘贴到 manifest.mf 文件中即可。”

Main-Class:  MyApp

Manifest.mf 文件就位后,现在可以将其集成到 myapp.jar 中了。这可以通过执行以下命令来完成,该命令会将manifest.mf 文件包含到存档中。

$ jar cvmf manifest.mf myapp.jar MyApp.class
  • 执行更新的 JAR 文件后,现在应该会生成所需的结果并显示在输出中,这标志着问题已成功解决。

$ java -jar myapp.jar

My Java App

要更深入地了解,请参阅 java、javac 和 jar 命令的手册页。

$ man java
$ man javac
$ man jar

结论

总而言之,JAR 文件格式提供了一种实用的解决方案,用于将多个 Java 类文件、资源和元数据捆绑到一个与平台无关的文件中进行分发。借助 java 命令行工具和 -jar 标志,您可以轻松部署完整的 Java 应用程序并享受其优势,包括安全性、压缩和可移植性。通过遵循本指南中概述的步骤,您现在对如何在 Linux 终端中创建和运行 JAR 文件有了深入的了解。这些知识将使您能够自信地轻松分发和部署您的 Java 应用程序。

©2015-2025 Norria support@norria.com