66

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

 5 years ago
source link: https://www.linuxprobe.com/linux-ter-mkrun-jar.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
导读 在本文中,我们将展示如何创建Java应用程序并将其捆绑到JAR文件中,并演示如何从Linux终端执行.jar文件。

JAR ( Java ARchive )是与平台无关的文件格式,用于将许多Java类文件以及关联的元数据和资源(如文本,图像等)聚合到单个文件中进行分发。

它允许Java运行时在一个存档文件中有效地部署整个应用程序,并提供许多好处,例如安全性,可以压缩其元素,缩短下载时间,允许封装和版本控制,支持可移植性。 它还支持扩展包装。

在本文中,我们将展示如何创建一个简单的Java应用程序并将其捆绑到一个JAR文件中,并演示如何从Linux终端执行.jar文件。

为此,必须安装java命令行工具来启动Java应用程序,并使用-jar标志执行封装在JAR文件中的程序。 使用此标志时,指定的JAR文件是所有用户类的源,并忽略其他类路径设置。

如何在Linux中创建JAR文件

1.首先,为一个名为HowtoingApp的应用程序编写一个带有main方法的简单Java类,用于演示目的。

$ vim HowtoingApp.java

将以下代码复制并粘贴到HowtoingApp.java文件中。

public class HowtoingApp {
public static void main(String[] args){
System.out.println(" Just executed HowtoingApp! ");
}
}

保存文件并关闭它。

2.接下来,我们需要使用javac和jar实用程序将类编译并打包到JAR文件中,如图所示。

$ javac -d . HowtoingApp.java
$ ls
$ jar cvf howtoingapp.jar HowtoingApp.class
$ ls

3.创建howtoingapp.jar后 ,现在可以使用java命令执行该文件,如图所示。

$ java -jar howtoingapp.jar
no main manifest attribute, in howtoingapp.jar

从上面命令的输出,我们遇到了一个错误。 JVM ( Java虚拟机 )无法找到我们的主清单属性 ,因此无法找到包含main方法的主类(public static void main(String [] args))。

JAR文件应该有一个清单,其中包含Main-Class形式的一行:classname ,它定义了带有main方法的类,该方法用作应用程序的起点。

4.要解决上述错误,我们需要更新JAR文件以包含清单属性和代码。 让我们创建一个MANIFEST.MF文件。

$ vim MANIFEST.MF

将以下行复制并粘贴到MANIFEST.MF文件中。

Main-Class:  HowtoingApp

保存文件, 然后使用以下命令将文件MANIFEST.MF添加到howtoingapp.jar 。

$ jar cvmf MANIFEST.MF howtoingapp.jar HowtoingApp.class

5.最后,当我们再次执行JAR文件时,它应该产生预期的结果,如输出中所示。

$ java -jar howtoingapp.jar
Just executed HowtoingApp!

有关更多信息,请参阅java , javac和jar命令手册页。

$ man java
$ man javac
$ man jar

参考 : JAR文件中的打包程序 。

就这样! 在这篇简短的文章中,我们已经解释了如何创建一个简单的Java应用程序并将其捆绑到一个JAR文件中,并演示了如何从终端执行.jar文件。 如果您有任何问题或补充意见要分享,请使用下面的反馈表。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK