如何用jar命令对java工程进行打包

        有时候为了更方便快捷的部署和执行Java程序,要把java应用程序打包成一个jar包。而这个基础的操作有时候也很麻烦,为了方便java程序员们能够方便的打包java应用程序,下面对jar命令进行介绍,并举出几个简单例子针对不同情况进行打包。
        一. jar命令用法:
         在cmd命令窗口下输入jar,回车,就会提示改命令的用法:
        

        二.例子(这里介绍的都是生成双击可执行的jar包):
        1.首先介绍如何在命令行下执行打包程序。
        1.1.没有包结构的最简单的工程。
            (1)在c:盘下新建文件“HelloWorld.java”:
        

1  public   class  HelloWorld
2  {
3       public   static   void  main(String[] args){
4          System.out.println( " Hello world! " );
5      }
6  }

            (2)在命令行下输入c:\javac HelloWorld.java,在c:盘下编译生成“HelloWorld.class”。

            (3)在c:盘下新建文件“menefest”(没有后缀名):
           

Main - Class: HelloWorld

            注意最后要有一个空行,否则会出现找不到类的错误。

             (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”:
        

package  com.gosyl.demo;

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”(没有后缀名):
        

Main - Class: com.gosyl.demo.HelloWorld

            注意最后要有一个空行冒号后面要一个空格。否则会出现找不到类的错误。

            (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”:
             

package  com.gosyl.demo;

public   class  Car
{
    
public   static   void  main(String[] args){
        Light.on();        
    }
}


            (2)在c:\com\gosyl\demo\下新建文件“Light.java”:
        

package  com.gosyl.demo;

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”(没有后缀名):
        

Main - Class: com.gosyl.demo.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项目打包与发行

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值