美文网首页
jar命令大全

jar命令大全

作者: zheng93775 | 来源:发表于2020-10-12 17:48 被阅读0次

将class文件打包成jar包

jar -cvf test.jar TestA.class TestB.class

也可以用通配符

jar -cvf test.jar *.class

或者,将整个文件夹打包进去

jar -cvf test.jar com/github/

打包后的jar包会自动生成摘要文件:META-INF/MANIFEST.MF,内容如下

Manifest-Version: 1.0
Created-By: 1.8.0_162 (Oracle Corporation)

解压jar包

jar -xvf test.jar

查看jar包内的文件清单

jar -tvf test.jar

    0 Mon Oct 12 16:50:14 CST 2020 META-INF/
    69 Mon Oct 12 16:50:14 CST 2020 META-INF/MANIFEST.MF
    0 Mon Oct 12 16:50:02 CST 2020 TestA.class
    0 Mon Oct 12 16:50:06 CST 2020 TestB.class

新增或更新jar包内的文件

以下命令将会更新jar包内的TestA.class文件

jar -uvf test.jar TestA.class

如果文件在jar中不存在,则添加进jar中,如下所示

// 添加Main.class
jar -uvf test.jar Main.class

// 查看jar中的文件列表
jar -tvf test.jar

查看的结果如下,可以看到,多出了Main.class

    0 Mon Oct 12 16:50:14 CST 2020 META-INF/
    69 Mon Oct 12 16:50:14 CST 2020 META-INF/MANIFEST.MF
    0 Mon Oct 12 16:50:02 CST 2020 TestA.class
    0 Mon Oct 12 16:50:06 CST 2020 TestB.class
  414 Mon Oct 12 17:23:04 CST 2020 Main.class

执行jar

以下的内容会介绍如何执行jar包,Main.class作为可执行的入口类,先给出Main.java的源码,如下所示

public class Main {
    public static void main(java.lang.String[] args) {
        System.out.println("hello world!");
    }
}

指定入口类执行jar

以下两条命令都可以指定jar包的入口类,执行main方法

java -classpath test.jar Main

-cp是-classpath的缩写形式,如果jar包还依赖了其他第三方jar包,列出来即可,如下所示

java -cp test.jar:lib/log4j.jar:lib/commons-io.jar Main

指定jar默认入口

可以把某个类作为jar包的默认执行入口,使用如下命令

jar -uvfe test.jar Main

执行后,我们解压jar包,可以看到META-INF/MANIFEST.MF文件多出了一行

Manifest-Version: 1.0
Created-By: 1.8.0_162 (Oracle Corporation)
Main-Class: Main

jar包就有了默认的执行入口,那么我们就可以使用简捷的方式运行jar了,如下

java -jar test.jar

指定classpath目录环境启动

java -Xbootclasspath/p:/etc/config/ -jar test.jar

通过这种方式,可以把配置文件放在/etc/config/目录中,java代码扫描classpath下的配置文件时,就会以-Xbootclasspath/p:指定的目录做为优先查找路径。这样可以把配置和jar分离。

相关文章

  • jar命令大全

    将class文件打包成jar包 也可以用通配符 或者,将整个文件夹打包进去 打包后的jar包会自动生成摘要文件:M...

  • Web Jenkins 自动构建打包

    Linux命令参考链接 Linux命令大全Linux命令大全Linux常用命令大全 本文可能到的命令: Jenki...

  • JAVA项目打包jar

    一、使用jar命令 命令行输入jar后,会提示出jar命令的相关介绍:

  • JAR命令

    JAR命令参数   jar命令格式:jar {ctxui} [vfmn0PMe] [jar-file] [mani...

  • linux常用操作命令

    Linux命令大全 http://man.linuxde.net/ "Linux命令大全"

  • [书籍]Linux命令行大全

    《Linux命令行大全》 《Linux命令行大全》《Linux命令行大全》 封底 内容提要 本书主要介绍Linux...

  • Helm 命令大全

    概述 史上最全helm命令大全,需要的工程师请收藏保存! helm命令大全 Helm命令大全-Helm仓库[htt...

  • Redis基本命令(数据类型)

    Redis命令大全 Redis命令大全 Key常用命令 keys * exists key(是否存在) move ...

  • Jrebel For Android

    打jar包命令:jar cvf ipaddress.jar * 回车编译命令:javac 教程:http://bl...

  • Linux命令大全(手册)_Linux常用命令行实例详解_Lin

    Linux命令大全(手册)_Linux常用命令行实例详解_Linux命令学习手册 Linux 命令大全 http...

网友评论

      本文标题:jar命令大全

      本文链接:https://www.haomeiwen.com/subject/uwrppktx.html