Windows命令行环境下java,jar,javac编译演练

36 篇文章 0 订阅
3 篇文章 0 订阅

Windows命令行环境下java,jar,javac编译演练


[参考] jar,java,javac 命令详解 (http://blog.csdn.net/emili/article/details/5749254)


Windows命令行环境下javac,java,jar编译、打包、运行演练的例子使用的是《Java编程思想.第四版》的generics/coffee代码。演练过程中我将CoffeeGenerator.java文件重命名为了Hello.java文件,然后增加了一个World.java调用Hello这个class;World.java的代码如下:


//: generics/coffee/World.java
// Generate different types of Coffee:
import generics.coffee.*;
import java.util.*;
import net.mindview.util.*;


public class World
{
  private int size = 0;
  public static void main(String[] args) {
    Hello gen = new Hello();
    for(int i = 0; i < 5; i++)
      System.out.println(gen.next());
    System.out.println("--------------------");
  }
} /* Output:
Americano 0
Latte 1
Americano 2
Mocha 3
Mocha 4
Breve 5
Americano 6
Latte 7
Cappuccino 8
Cappuccino 9
*///:~






【步骤一】 编译第一个jar的java文件
\rookie\mina\hello>javac net\mindview\util\*.java


【步骤二】 生成第一个jar包
\rookie\mina\hello>jar cvf utils.jar net\mindview\util\*.class
标明清单(manifest)
增加:net/mindview/util/BasicGenerator.class(读入= 990) (写出= 501)(压缩了 49%)
增加:net/mindview/util/BinaryFile.class(读入= 865) (写出= 537)(压缩了 37%)
增加:net/mindview/util/CollectionData.class(读入= 823) (写出= 434)(压缩了 47%)
...
增加:net/mindview/util/Tuple.class(读入= 1805) (写出= 512)(压缩了 71%)
增加:net/mindview/util/TwoTuple.class(读入= 768) (写出= 418)(压缩了 45%)
增加:net/mindview/util/TypeCounter.class(读入= 2226) (写出= 1213)(压缩了 45%)




【步骤三】 编译第二个jar包java文件
\rookie\mina\hello\generics\coffee>
\rookie\mina\hello\generics\coffee>javac -classpath \rookie\mina\hello\utils.jar;\rookie\mina\hello\coffee.jar *.java




【步骤四】 生成第二个jar包
\rookie\mina\hello\generics\coffee>cd ..\..\


\rookie\mina\hello>jar cvf coffee.jar generics\coffee\*.class
标明清单(manifest)
增加:generics/coffee/Americano.class(读入= 214) (写出= 165)(压缩了 22%)
增加:generics/coffee/Breve.class(读入= 206) (写出= 162)(压缩了 21%)
增加:generics/coffee/Cappuccino.class(读入= 216) (写出= 167)(压缩了 22%)
增加:generics/coffee/Hello$CoffeeIterator.class(读入= 963) (写出= 545)(压缩了 4
3%)
...
增加:generics/coffee/Hello.class(读入= 2141) (写出= 1108)(压缩了 48%)
增加:generics/coffee/Latte.class(读入= 206) (写出= 162)(压缩了 21%)
增加:generics/coffee/Mocha.class(读入= 206) (写出= 162)(压缩了 21%)


\rookie\mina\hello>




【步骤五】 编译java文件




\rookie\mina\hello\generics\coffee>javac -classpath \rookie\mina\hello\utils.jar;\rookie\mina\hello\coffee.jar World.java


【步骤六】 执行World.class


\rookie\mina\hello\generics\coffee>java -classpath .;\rookie\mina\hello\utils.jar;\rookie\mina\hello\coffee.jar World
Americano 0
Latte 1
Americano 2
Mocha 3
Mocha 4
--------------------


\rookie\mina\hello\generics\coffee>


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值