资讯专栏INFORMATION COLUMN

jar命令打包与java执行jar包

lx1036 / 1503人阅读

摘要:命令详解文件文件目录文件名其中是命令的子命令,每次命令只能包含中的一个,它们分别表示创建新的文件包列出文件包的内容列表展开文件包的指定文件或者所有文件更新已存在的文件包添加文件到文件包中中的选项可以任选,也可以不选,它们是命令

JAR命令详解

jar {ctxu}[vfm0M] [jar-文件] [manifest-文件] [-C 目录] 文件名 …

其中 {ctxu} 是 jar 命令的子命令,每次 jar 命令只能包含 ctxu 中的一个,它们分别表示:

-c 创建新的 JAR 文件包

-t 列出 JAR 文件包的内容列表

-x 展开 JAR 文件包的指定文件或者所有文件

-u 更新已存在的 JAR 文件包 (添加文件到 JAR 文件包中)

[vfm0M] 中的选项可以任选,也可以不选,它们是 jar 命令的选项参数

-v 生成详细报告并打印到标准输出

-f 指定 JAR 文件名,通常这个参数是必须的

-m 指定需要包含的 MANIFEST 清单文件

-0 只存储,不压缩,这样产生的 JAR 文件包会比不用该参数产生的体积大,但速度更快

-M 不产生所有项的清单(MANIFEST〕文件,此参数会忽略 -m 参数

创建jar包并显示打包过程

jar -cvf filename.jar files

创建可执行jar包并显示打包过程

jar -cvfm filename.jar MANIFEST.MF files

查看jar包中的文件

jar -tf filename.jar

解压jar包并显示打包过程

jar -xvf filename.jar

向jar包中添加文件

jar -uf filename.jar files

(加-C参数,表示先切换到TEST目录下在执行jar -cvf命令)

JAR -CVF FILENAME.JAR -C TEST/
JAVA执行JAR包

执行不带MANIFEST文件的jar包

java -classpath filename.jar MainClass

例如有一个类叫helloworld里边有main方法代码如下:

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

然后将他编译打成jar包,没有指定添加MANIFEST.MF文件或没有执定main方法所在的类,使用java -jar helloworld.jar会报no main manifest attribute, in helloworld.jar错误,这种情况就可以使用java -classpath helloworld.jar helloworld命令指定main class执行

执行jar包中包含jar包的jar包

java -classpath inner.jar -jar filename.jar

有时候我们需要引用第三方的jar包,我们打包的时候就需要把第三方jar包一起打到jar包中,这时候有两种方法:

第一种把第三方的jar包解压后与项目一起打包

第二种使用上边的命令去执行,例如有一个第三方的jar包叫inner.jar与项目一起打包成jar文件叫helloworld.jar使用java -jar命令去执行会报找不到class异常,就需要使用上边的命令java -classpath inner.jar -jar helloworld.jar

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/68030.html

相关文章

  • java jar总结(二)

    摘要:前言昨天总结了使用进行打包今天说一下命令行下使用命令进行打包。在命令行下打包需要比使用这些成熟的工具更需要注意一些东西,但打包和使用总体来说都不算太复杂,下面慢慢讲述。第三行指定主类所在类路径。第四行指明程序运行的主类。 前言 昨天总结了使用eclipse进行jar打包,今天说一下命令行下使用jar命令进行打包。 在命令行下打包jar需要比使用eclipse这些成熟的工具更需要注意一些...

    Mr_houzi 评论0 收藏0
  • Spring Boot 应用 Docker 化 《Spring Boot 2.0极简教程》(陈光剑)

    摘要:应用化极简教程陈光剑基于的企业级应用开发最佳实践前面的章节中,我们都是在环境中开发运行测试应用程序。关键字是分布式应用微服务容器虚拟化。通常,在企业项目实践中,会实现一套应用部署发布的自动化运维平台工具。 Spring Boot 应用 Docker 化 《Spring Boot 2.0极简教程》(陈光剑)—— 基于 Gradle + Kotlin的企业级应用开发最佳实践 前面的章节中,...

    Donne 评论0 收藏0
  • Spring Boot 应用 Docker 化 《Spring Boot 2.0极简教程》(陈光剑)

    摘要:应用化极简教程陈光剑基于的企业级应用开发最佳实践前面的章节中,我们都是在环境中开发运行测试应用程序。关键字是分布式应用微服务容器虚拟化。通常,在企业项目实践中,会实现一套应用部署发布的自动化运维平台工具。 Spring Boot 应用 Docker 化 《Spring Boot 2.0极简教程》(陈光剑)—— 基于 Gradle + Kotlin的企业级应用开发最佳实践 前面的章节中,...

    rose 评论0 收藏0
  • 用maven将dubbo工程打成jar运行

    摘要:打包方式使用打包插件在文件最后新增以下代码。表达式支持通配符打成一个包如果需要将依赖的包都达到一个包中运行,可以使用这个插件。 maven打包方式 使用maven打包插件maven-jar-plugin在pom.xml文件最后新增以下代码。maven-dependency-plugin是指将依赖的jar包复制到指定目录maven-resources-plugin将依赖的resource...

    shengguo 评论0 收藏0
  • Java 使用JAR文件

    摘要:使用文件与以下好处安全。包作为内嵌在平台内部处理的标准,能够在各种平台上直接使用命令详解创建文件该命令没有显示压缩过程,执行结果是将当前路径下的路径下的全部内容生成一个文件。使用如下命令即可将清单文件中的对提取到文件中。 JAR,Java Archive File,Java档案文件。JAR文件是一种压缩文件,与ZIP压缩文件兼容,通常称为JAR包。JAR文件中默认包含了一个名为META...

    seal_de 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<