如何用jar命令对java工程进行打包
有时候为了更方便快捷的部署和执行Java程序,要把java应用程序打包成一个jar包。而这个基础的操作有时候也很麻烦,为了方便java程序员们能够方便的打包java应用程序,下面对jar命令进行介绍,并举出几个简单例子针对不同情况进行打包。
一. jar命令用法:
在cmd命令窗口下输入jar,回车,就会提示改命令的用法:
二.例子(这里介绍的都是生成双击可执行的jar包):
1.首先介绍如何在命令行下执行打包程序。
1.1.没有包结构的最简单的工程。
(1)在c:盘下新建文件“HelloWorld.java”:
(2)在命令行下输入c:\javac HelloWorld.java,在c:盘下编译生成“HelloWorld.class”。
(3)在c:盘下新建文件“menefest”(没有后缀名):

注意最后要有一个空行,否则会出现找不到类的错误。
(4)打包:输入c:\jar cvmf menifest HelloWorld.jar HelloWord.jar HelloWorld.class,在c:盘下生成“HelloWorld.jar”。
(5)执行:输入c:\java -jar HelloWord.jar。屏幕回显“HelloWorld”。
1.2.有包结构的java工程。
(1)在c:\com\gosyl\demo\下新建文件“HelloWorld.java”:
public class HelloWorld{
public static void main(String[] args){
System.out.println("HelloWorld");
}
}
(2)在命令行下输入c:\javac com/gosyl/demo/HelloWorld.java,在c:\com\gosyl\demo\文件夹下编译生成“HelloWorld.class”。
(3)在c:盘下新建文件“menefest2”(没有后缀名):

注意最后要有一个空行,冒号后面要一个空格。否则会出现找不到类的错误。
(4)打包:输入c:\jar cvmf menifest2 HelloWorld.jar HelloWord.jar com/,在c:盘下生成“HelloWorld.jar”。
(5)执行:输入c:\java -jar HelloWord.jar。屏幕回显“HelloWorld”。
1.3.引用到外部jar包的java工程。
(1)在c:\com\gosyl\demo\下新建文件“Car.java”:
public class Car
{
public static void main(String[] args){
Light.on();
}
}
(2)在c:\com\gosyl\demo\下新建文件“Light.java”:
class Light
{
public static void on(){
System.out.println("Light is on!");
}
}
(3)打包1:输入c:\jar cvf Light.jar com/gosyl/demo/Light.class,在c:盘下生成“Light.jar”。
(4)在c:盘下新建文件“menefest-car”(没有后缀名):
Class-Path: Light.jar
注意最后要有一个空行,冒号后面要一个空格。否则会出现找不到类的错误。
(5)打包2:输入c:\jar cvmf menifest-car Car.jar com/gosyl/demo/Car.class,在c:盘下生成“Car.jar”。
(6)执行:输入c:\java -jar Car.jar。屏幕回显“Light is on”。
三.总结
1.清单文件menifest,对格式要求很高,注意每个冒号后面要有一个空格,文件最后要有一个空行。
2.对于引用到外部jar包的工程,需要在manifest中定义好Class-Path属性。
3.对于双击.bat文件出现刷屏现象的情况,请直接把.bat文件的内容键入命令行执行。
4.对于重复签名的jar包,在META-INF里面会出现多个签名文件,删除掉多余的,保存其中一个才能保证jws正常启动。
请参照相关文章此文章貌似有错:
java项目打包与发行
如何用jar命令对java工程进行打包的更多相关文章
- JAVA_SE基础——58.如何用jar命令对java工程进行打包
有时候为了更方便快捷的部署和执行Java程序,要把java应用程序打包成一个jar包.而这个基础的操作有时候也很麻烦,为了方便java程序员们能够方便的打包java应用程序,下面对jar命令进行介绍, ...
- Eclipse IDE 添加jar包到Java工程中
操作系统:Windows 10 x64 工具1:Eclipse Java EE IDE for Web Developers. Version: Photon Release (4.8.0) 在Pac ...
- 如何用jar命令生成可执行的jar文件
如果你已经把zh.java文件生成了zh.class文件 如果zh.class的路径是bin/com/zhang/zh.class 则在bin目录下放一个manifest.mf文件,文件内容如下: M ...
- Java jar命令 常见用法
一.jar命令作用: 进行打包 -- 把多个文件打包成一个压缩包 -- 这个压缩包和Winzip的压缩格式是一样的. 区别在于jar压缩的文件默认多一个META-INF的文件夹,该文件夹下包含一个Ma ...
- 在linux下运行java工程
在linux 服务器上运行JAVA工程需注意.1: 在linux 上: /etc/profile 设置classpath 配置正确的jar 路径.2: 把本地JAVA工程做成一个jar包.如:1. ...
- 阿里Java架构师打包 FatJar 方法小结
在函数计算(Aliyun FC)中发布一个 Java 函数,往往需要将函数打包成一个 all-in-one 的 zip 包或者 jar 包.Java 中这种打包 all-in-one 的技术常称之为 ...
- JAVA核心知识点--打包 FatJar 方法小结
目录 什么是 FatJar 三种打包方法 1. 非遮蔽方法(Unshaded) 2. 遮蔽方法(Shaded) 3. 嵌套方法(Jar of Jars) 小结 参考阅读 原文地址:https://yq ...
- 如何用javac 和java 编译运行整个Java工程 (转载)【转】在Linux下编译与执行Java程序
如何用javac 和java 编译运行整个Java工程 (转载) http://blog.csdn.net/huagong_adu/article/details/6929817 [转]在Linux ...
- Java——jar命令
把*.class压缩成一个文件,这样的文件就称为jar文件. 如果想要生成jar文件,直接使用JDK中bin目录里的jar.exe就可以将所有的类文件进行压缩. 当用户得到一个jar文件后,即可通过设 ...
随机推荐
- caffe windows学习:第一个测试程序
caffe windows编译成功后,就可以开始进行测试了.如果还没有编译成功的,请参考:caffe windows 学习第一步:编译和安装(vs2012+win 64) 一般第一个测试都是建议对手写 ...
- IOS-一步一步教你自定义评分星级条RatingBar ——转载的
由于项目的需要,需要设计能评分.能显示评分数据的星级评分条,但是IOS上好像没有这个控件,Android是有RatingBar这个控件的(又发现一个IOS不如Android好的),那就只能自定义了,在 ...
- 尝试EJB整合Mybatis部署时报错:获得带有类加载器MybatisUtil的ModuleClassLoader的反射信息出错,请问大神如何解决
mybatis的配置 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configurati ...
- EF实体框架之CodeFirst四
在EF实体框架之CodeFirst二中也提到数据库里面一般包括表.列.约束.主外键.级联操作.实体关系(E-R图).存储过程.视图.锁.事务.数据库结构更新等.前面几篇博客把表.存储过程.视图这些算是 ...
- 手把手教你Linux服务器集群部署.net网站 - Linux系统安装和设置
在开源软件已成趋势化的今天,微软这‘老古董’也开始向开源方向发力,这对我们.NET开发者是极大的喜讯.而在开源软件中, Linux就是其中一个优秀的代表,几乎各行业和计算机有关的都有它的身影,其中一点 ...
- 微信小程序「官方示例代码」浅析【上】
从某个微信群里,拿到了这个IDE的下载地址,然后就有了这个: 根本登不上去,怎么办,怎么办呢? 看代码啊... 反正我又没有保密协议,解压缩一看NodeWebkit + React: 好啦 ,逛逛呗, ...
- jQuery应用之(一)使用jQuery选择器(荐)
如上文(地址)jQuery预先的javascript的编程,提供了计划所有css3下的标准选择器,开发者可以利用这些选择器轻松选择各种元素,供javascript使用. 重要的是jQuery对这些选择 ...
- 手把手教你Dojo入门
如果仅仅是为了练习Dojo,或者进行测试,可以参考下面的步骤.下面的文件均是在Windows下测试 需要的工具 1 Tomcat服务器:下载地址 选择适合自己的机器型号,即可 2 Dojo的工具包:下 ...
- 传智168期JavaEE就业班 day03-js
* 课程回顾: * CSS * CSS的简介 * 层叠样式表. * CSS与HTML的结合(4种) * HTML的标签提供了属性 style="CSS的代码" * HTML提供了标 ...
- 5.9-3 用正则表达式判断字符串text是否为合法的手机号
package zfc; public class Zfc { public static void main(String[] args) { //判断手机号格式是否合法 String text = ...