linux下運(yùn)行java

3. 編譯運(yùn)行命令

編譯

javac [-d] [-o] [-verbose] [-classpath][-sourcepath]


-d, 指定生成的.class文件存放目錄,一般省略則默認(rèn)放在java源文件同一目錄下

-o, 這個(gè)選項(xiàng)告訴javac優(yōu)化內(nèi)聯(lián)的static,final以及privite成員函數(shù)所產(chǎn)生的碼空郊。

-verbose份招,此選項(xiàng)告知java顯示出有關(guān)被編譯的源文件和任何被調(diào)用類(lèi)庫(kù)的信息。如-verbose:class能看到各種加載的信息狞甚,-verbose:gc 是garbagecollection 的信息


-classpath锁摔,設(shè)定要用到的類(lèi)路徑,可以是目錄入愧,jar文件鄙漏,zip文件(里面都是class文件)嗤谚,值得注意的是,此classpath中的內(nèi)容是會(huì)覆蓋掉環(huán)境變量CLASSPATH里面的設(shè)定怔蚌。也可以省略巩步,省略則默認(rèn)使用環(huán)境變量$CLASSPATH路徑。

所以一般classpath的設(shè)定都是:當(dāng)前目錄加環(huán)境變量CLASSPATH設(shè)置目錄桦踊,如

javac??-classpath .:$CLASSPATH ???abc.java?java基本類(lèi)一般都在JDK環(huán)境變量$CLASSPATH中指定好路徑了

自己需要用到的第三方類(lèi)一般都放在文件當(dāng)前目錄下椅野,用.指定路徑即可

若自己需要添加一些類(lèi)可以在.:$CLASSPATH后面添加“:類(lèi)的具體路徑”。

-sourcepath籍胯, 設(shè)定要編譯的java文件路徑竟闪,可以是目錄,jar文件杖狼,zip文件(里面都是java文件)炼蛤。

若編譯的是jar包中的主類(lèi)文件abc.java時(shí),一般編譯整個(gè)包javac edu.test.jar或者包文件夾javac ./edu/test蝶涩。

一般當(dāng)java文件中有多個(gè)需要編譯時(shí)理朋,可以逐一列出,也可以將文件名列在一個(gè)文件中绿聘,名稱(chēng)間用空格或者回車(chē)行來(lái)進(jìn)行分隔嗽上,然后在命令行中使用該列表名,名字前冠以@字符熄攘,如:

javac @usr/test/sourcefile.list???????????? 目錄usr/test 下的sourcefile.list


說(shuō)明

1)一般兽愤,對(duì)于只有一個(gè)出口主函數(shù)main,其他java文件是以?xún)?nèi)聯(lián)類(lèi)的形式被主函數(shù)調(diào)用的多個(gè)java文件組成的工程來(lái)說(shuō)挪圾,編譯時(shí)只需要對(duì)出口主函數(shù)main所在java文件編譯即可浅萧,工程中的其他java文件會(huì)自動(dòng)關(guān)聯(lián)編譯。

2)對(duì)于程序中調(diào)用到了第三方類(lèi)或者package的情況洛史,則一般先需要在程序文件中加入import第三方類(lèi)或者jar包.*? 如

import edu.test.abc? 引用jar包edu.test下的abc.java惯殊,如果直接引用文件夾的話,則是edu/test文件夾下的abc.java文件也殖。為穩(wěn)妥土思,一般都引用整個(gè)包內(nèi)文件import edu.test.*。

(jar包名對(duì)應(yīng)文件夾路徑忆嗜,將某個(gè)路徑文件夾下的所有java文件進(jìn)行打包即為jar包己儒,引用時(shí)可以直接引用文件夾)

編譯時(shí)需要將jar包路徑或者文件夾根目錄,如edu的路徑加入到classpath中捆毫。一般常把jar包或者根文件夾拷貝到當(dāng)前目錄下闪湾,指定classpath為.,編譯器自動(dòng)會(huì)從當(dāng)前目錄開(kāi)始尋找绩卤。



運(yùn)行

java [-classpath] [-sourcepath]

-classpath和編譯時(shí)一致途样,指定運(yùn)行時(shí)要搜索的類(lèi)路徑江醇。需要注意的是,由于所要執(zhí)行的類(lèi)也是要搜索的類(lèi)的一部分何暇,所以一定要把這個(gè)類(lèi)的路徑也放到classpath設(shè)置里陶夜,故在要執(zhí)行的類(lèi)的路徑里執(zhí)行java命令時(shí),一定要加上.表示當(dāng)前目錄也搜索裆站。


-sourcepath 指需要運(yùn)行的目標(biāo)文件名(不要后綴名)条辟,如編譯javac a.java則運(yùn)行java a。若運(yùn)行的是jar包中的主類(lèi)文件時(shí)需要指出包路徑并要在class名前帶上完整的包名宏胯,如java edu,test.abc羽嫡。且該包的根目錄(edu所在文件夾路徑)需要包含在classpath中。


說(shuō)明:

1)文件搜索時(shí)肩袍,系統(tǒng)只會(huì)向下杭棵,從指定目錄向其子目錄搜索,不會(huì)溯源向其父祖目錄搜索了牛。

2)運(yùn)行時(shí)颜屠,classpath應(yīng)同時(shí)包含執(zhí)行的目錄和調(diào)用類(lèi)的目錄辰妙,一般兩者放在同一根目錄下鹰祸,運(yùn)行時(shí)在根目錄下運(yùn)行。不然會(huì)出現(xiàn)錯(cuò)誤找不到運(yùn)行的main函數(shù)密浑。如

調(diào)用的類(lèi)文件./com/bao/ws/h.class蛙婴,執(zhí)行文件為./com/bao/bs/a.class,classpath應(yīng)包含.路徑

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末尔破,一起剝皮案震驚了整個(gè)濱河市街图,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌懒构,老刑警劉巖餐济,帶你破解...
    沈念sama閱讀 219,188評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異胆剧,居然都是意外死亡絮姆,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,464評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)秩霍,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)篙悯,“玉大人,你說(shuō)我怎么就攤上這事铃绒「胝眨” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,562評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵颠悬,是天一觀的道長(zhǎng)矮燎。 經(jīng)常有香客問(wèn)我定血,道長(zhǎng),這世上最難降的妖魔是什么诞外? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,893評(píng)論 1 295
  • 正文 為了忘掉前任糠悼,我火速辦了婚禮,結(jié)果婚禮上浅乔,老公的妹妹穿的比我還像新娘倔喂。我一直安慰自己,他們只是感情好靖苇,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,917評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布席噩。 她就那樣靜靜地躺著,像睡著了一般贤壁。 火紅的嫁衣襯著肌膚如雪悼枢。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,708評(píng)論 1 305
  • 那天脾拆,我揣著相機(jī)與錄音馒索,去河邊找鬼。 笑死名船,一個(gè)胖子當(dāng)著我的面吹牛绰上,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播渠驼,決...
    沈念sama閱讀 40,430評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼蜈块,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了迷扇?” 一聲冷哼從身側(cè)響起百揭,我...
    開(kāi)封第一講書(shū)人閱讀 39,342評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎蜓席,沒(méi)想到半個(gè)月后器一,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,801評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡厨内,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,976評(píng)論 3 337
  • 正文 我和宋清朗相戀三年祈秕,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片隘庄。...
    茶點(diǎn)故事閱讀 40,115評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡踢步,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出丑掺,到底是詐尸還是另有隱情获印,我是刑警寧澤,帶...
    沈念sama閱讀 35,804評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站兼丰,受9級(jí)特大地震影響玻孟,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜鳍征,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,458評(píng)論 3 331
  • 文/蒙蒙 一黍翎、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧艳丛,春花似錦匣掸、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,008評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至戴差,卻和暖如春送爸,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背暖释。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,135評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工袭厂, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人球匕。 一個(gè)月前我還...
    沈念sama閱讀 48,365評(píng)論 3 373
  • 正文 我出身青樓纹磺,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親谐丢。 傳聞我的和親對(duì)象是個(gè)殘疾皇子爽航,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,055評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)乾忱,斷路器,智...
    卡卡羅2017閱讀 134,665評(píng)論 18 139
  • 精心收集整理的教程筆記 第01天 Java基礎(chǔ)入門(mén) 第1章計(jì)算機(jī)基礎(chǔ) 1.1計(jì)算機(jī) 計(jì)算機(jī)(computer)俗稱(chēng)...
    Java幫幫閱讀 5,960評(píng)論 1 109
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,823評(píng)論 6 342
  • 水礦總醫(yī)院紅旗衛(wèi)生所與家庭病人簽定病床協(xié)議書(shū)
    美的傳說(shuō)閱讀 235評(píng)論 0 0
  • *1)Clap your hands ******Clap,clap,clap your hands, As sl...
    Luckyeiko閱讀 1,522評(píng)論 0 2