dos下编译运行java工程,并解决外部jar包依赖
首先介紹一下我在eclipse中能夠運(yùn)行的工程目錄結(jié)構(gòu):
接下來刪除掉.settings ?bin .classpath ?.project這些目錄和文件(避免干擾)
在src目錄中有三個(gè)包
com.liyuanhong.ui
? ??com.liyuanhong.ui.main.java
? ??com.liyuanhong.ui.OperationWindow.java
com.liyuanhong.listener
? ??com.liyuanhong.listener.ChooseFile.java
? ??com.liyuanhong.listener.ConvertFile.java
com.liyuanhong.util
? ??com.liyuanhong.util.ConverMethod.java
在org.json,目錄中存放的是org.json.jar包
編譯java工程
接下來我們要編譯整個(gè)工程,編譯過程中會(huì)存在包的依賴問題.這個(gè)在編譯過程中我會(huì)提到。
在更目錄下打開命令行(shift + 鼠標(biāo)右鍵,在當(dāng)前位置打開命令行)
cd ?src ?進(jìn)入src目錄
現(xiàn)在我們編譯com.liyuanhong.ui下的所有java文件
javac com\liyuanhong\ui\*.java
結(jié)果報(bào)錯(cuò):
意思是在編譯過程中找不到org.json(這是個(gè)外部jar包)這個(gè)包(編譯存在包的依賴),于是我們?cè)诰幾g過程中添加org.json包的classpath:
javac -classpath ..\org.json\org.json.jar com\liyuanhong\ui\*.java
結(jié)果又報(bào)錯(cuò):
原因是早不到com.liyuanhong.listener這個(gè)包(因?yàn)榫幾gcom.liyuanhong.ui包下的某個(gè)文件需要鏈接到com.liyuanhong.listener里面的文件),于是我們把com\liyuanhong\listener\*.java也一同編譯另外加上com\liyuanhong\util\*.java,如下:
javac -classpath ..\org.json\org.json.jar com\liyuanhong\util\*.java com\liyuanhong\listener\*.java com\liyuanhong\ui\*.java(三個(gè)包的順序沒有影響),出現(xiàn):
說明編譯成功了,這時(shí)到三個(gè)包的目錄下,已經(jīng)可以看到被編譯的class文件。
或者更簡(jiǎn)便的方法是,在src目錄下建一個(gè)compole.bat文件,復(fù)制一下代碼執(zhí)行即可:
@echo off javac -classpath ..\org.json com\liyuanhong\util\*.java com\liyuanhong\listener\*.java com\liyuanhong\ui\*.java
運(yùn)行clas文件的java工程
回到src目錄,現(xiàn)在我們要執(zhí)行這個(gè)工程(主類在main.class中)
java com.liyuanhong.ui.main
可以看到我們的界面運(yùn)行成功了(稍后再介紹這個(gè)程序的作用),但是當(dāng)我們點(diǎn)擊選擇,選擇一個(gè)文件(選擇的文件為bbb.txt以及源代碼的地址我會(huì)共享出來,幫助感興趣的你做實(shí)驗(yàn)),點(diǎn)擊轉(zhuǎn)換,又出錯(cuò)了:
意思是早不到org.json.jar這個(gè)jar包,于是我們需要將org.json.jar這個(gè)jar包添加到環(huán)境變量中。dos或者其他腳本設(shè)置的環(huán)境變量都是臨時(shí)的,全局的必須在屬性-環(huán)境變量里面設(shè)置。
echo %classpath%我的顯示:
.;D:\program files\Java\jdk1.7.0_45\lib;D:\program files\Java\jdk1.7.0_45\lib\tools.jar;D:\program files\Java\jdk1.7.0_45\lib\dt.jar通過(在上面顯示的環(huán)境變量 中多加了一個(gè):..\org.json\org.json.jar): set classpath=.;D:\program files\Java\jdk1.7.0_45\lib;D:\program files\Java\jdk1.7.0_45\lib\tools.jar;D:\program files\Java\jdk1.7.0_45\lib\dt.jar;..\org.json\org.json.jar注意不能直接使用:set ?classpath=..\org.json\org.json.jar來設(shè)置環(huán)境變量,這樣設(shè)置后臨時(shí)環(huán)境就只有..\org.json\org.json.jar了
然后在執(zhí)行:
java com.liyuanhong.ui.main可以看到這次文件轉(zhuǎn)換成功了。(注意,由于在dos中設(shè)置的環(huán)境變量是臨時(shí)的,當(dāng)關(guān)閉了窗口再重新打開后,又要重新設(shè)置環(huán)境變量才行了)
更加簡(jiǎn)便的方法是,在src目錄下創(chuàng)建一個(gè)run.bat,復(fù)制一下內(nèi)容:
@echo off set classpath=.;D:\program files\Java\jdk1.7.0_45\lib;D:\program files\Java\jdk1.7.0_45\lib\tools.jar;D:\program files\Java\jdk1.7.0_45\lib\dt.jar;..\org.json\org.json.jar java com.liyuanhong.ui.main雙擊運(yùn)行即可補(bǔ)充:
? ? ?實(shí)驗(yàn)工成為,將monkeyrunner錄制的腳本轉(zhuǎn)換為py腳本,可直接通過monkeyrunner ?bbb.py直接執(zhí)行。
? ? ?實(shí)驗(yàn)資源下載地址:
? ? ?http://download.csdn.net/download/lyhdream/6679209
總結(jié)
以上是生活随笔為你收集整理的dos下编译运行java工程,并解决外部jar包依赖的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Win7下共享文件(以及凭据管理简单介绍
- 下一篇: dos下打包整个java工程