运行 JAR 打包的软件
既然您已经学会了如何创建 JAR 文件,那么如何实际运行打包的代码?请考虑以下情形:
-
您的 JAR 文件包含一个要在浏览器中运行的 Servlets。
-
您的 JAR 文件包含一个将从命令行启动的应用程序。
-
您的 JAR 文件包含您要用作 extensions 的代码。
本节将介绍前两种情况。 extension mechanism上的教程中的另一条记录介绍了 JAR 文件作为 extensions 的使用。
打包在 JAR 文件中的 Servlets
要从 HTML 文件启动任何要在浏览器中运行的 Servlets,请使用applet
标记。有关更多信息,请参见Java Applets类。如果 ServletsBinding 为 JAR 文件,则您唯一需要做的不同就是使用* archive *参数指定 JAR 文件的相对路径。
例如,使用 TicTacToe 演示 Servlets。可以像这样标记显示 Servlets 的 HTML 文件中的applet
标签:
<applet code=TicTacToe.class
width="120" height="120">
</applet>
如果 TicTacToe 演示程序打包在名为TicTacToe\.jar
的 JAR 文件中,则可以通过添加archive
参数来修改applet
标签:
<applet code=TicTacToe.class
archive="TicTacToe.jar"
width="120" height="120">
</applet>
archive
参数指定包含TicTacToe\.class
的 JAR 文件的相对路径。对于此示例,假定 JAR 文件和 HTML 文件位于同一目录中。如果不是,则必须在archive
参数的值中包含 JAR 文件的相对路径。例如,如果 JAR 文件是 HTML 文件下方的一个名为applets
的目录,则applet
标记将如下所示:
<applet code=TicTacToe.class
archive="applets/TicTacToe.jar"
width="120" height="120">
</applet>
JAR 文件作为应用程序
您可以使用 Java 启动器(java
命令)运行 JAR 打包的应用程序。基本命令是:
java -jar jar-file
\-jar
标志告诉启动程序该应用程序以 JAR 文件格式打包。您只能指定一个 JAR 文件,该文件必须包含所有特定于应用程序的代码。
在执行此命令之前,请确保运行时环境具有有关 JAR 文件中哪个类是应用程序的入口点的信息。
要指示哪个类是应用程序的入口点,必须在 JAR 文件的清单中添加Main\-Class
Headers。Headers 采用以下形式:
Main-Class: classname
Headers 的值classname
是作为应用程序入口点的类的名称。
有关更多信息,请参见设置应用程序的入口点部分。
在清单文件中设置Main\-Class
时,可以从命令行运行该应用程序:
java -jar app.jar
要从另一个目录中的 JAR 文件运行应用程序,必须指定该目录的路径:java -jar path/app.jar