第一次寫Batch請多多包含
要編譯的java程式碼如下圖,實體Code會貼在Batch Shell的後面
先把Code存成java4.java,並且javac java4.java後會出現以下幾個Class
執行Create jar.bat,請依序輸入no java4 ChengYouFang,輸入完畢後匯出編程需要的manifest.mf(有在編程的人應該不陌生吧XDDDD又愛又恨的東西),並且執行打包程序
依序輸入的為是否有Package、主類別(就是執行整個專案的類別檔名稱)以及輸出的jar檔案名稱
為了證明打包不是作假的,所以下圖分別使用java -jar ChengYouFang.jar以及java java4的方式去執行
懶得自己重新複製貼上點我下載
Create jar.bat
@ECHO off
REM 20130115 By Cheng You Fang publish
REM http://writecodepeople.blogspot.tw/
SET /p isPackage=The project if a Package then input yes, else input no:
IF NOT %isPackage%==yes CALL:NO
:YES
SET /p PackageName=Please input your Package Name:
SET /p MainClass=Please input your Main Class Name:
ECHO Main-Class:%PackageName%/%MainClass% > ./manifest.mf
SET /p JarName=Please input your jar Name:
jar cvfm %JarName%.jar manifest.mf *.class
CALL:END
:NO
SET /p MainClass=Please input your Class Name:
ECHO Main-Class: %MainClass% > ./manifest.mf
SET /p JarName=Please input your jar Name:
jar cvfm %JarName%.jar manifest.mf *.class
CALL:END
:END
PAUSE
EXIT
Sample Code
class Tortoise extends Thread {
static int i = 1;
@Override
public void run() {
try {
for (; i <= 10; i++) {
System.out.println("第" + i + "秒,烏龜跑了" + i + "公尺");
sleep(1000);
}
System.out.println("烏龜花了" + (i - 1) + "秒");
} catch (InterruptedException e) {
e.printStackTrace();
}
super.run();
}
}
class Rbbit extends Thread {
static int i = 1;
@Override
public void run() {
try {
for (; i <= 5; i++) {
System.out.println("第" + i + "秒,兔子跑了" + (i * 2) + "公尺");
sleep(1000);
}
System.out.println("兔子花了" + (i - 1) + "秒");
} catch (InterruptedException e) {
e.printStackTrace();
}
super.run();
}
}
public class java4 {
public static void main(String argv[]) {
Rbbit rbbit = new Rbbit();
Tortoise tortoise = new Tortoise();
rbbit.start();
tortoise.start();
}
}
參考資料:
http://it-easy.tw/java-jar/
http://www.petri.co.il/quickly_create_txt_file_from_cmd.htm
http://www.robvanderwoude.com/if.php
http://blog.miniasp.com/post/2009/06/24/Sleep-command-in-Batch.aspx
http://www.computerhope.com/pausehlp.htm
http://stackoverflow.com/questions/7879791/how-to-read-input-from-console-in-a-batch-file
http://blog.miniasp.com/post/2010/09/24/How-to-parse-text-from-file-or-command-using-Batch.aspx
http://www.robvanderwoude.com/goto.php
http://33tsai.blogspot.tw/2008/04/bat.html
http://www.jb51.net/article/14986.htm
http://stackoverflow.com/questions/132799/how-can-you-echo-a-newline-in-batch-files
http://www.robvanderwoude.com/call.php
http://bbs.csdn.net/topics/260067601
http://yukinaco.pixnet.net/blog/post/22737349



