我正在閱讀一些關于高級Java的書,我被指示使用以下命令編譯文件:.javajavac -d classes -classpath c:\somepath\somejar.jar;classes:.我想知道:這些符號是表示一個參數,還是分別表示關鍵字后的不同參數?他們代表什么?:.:.classes為什么我們需要提供之后?作為所有這些組合:classes:.somejar.jarjavac -d classes -classpath c:\somepath\somejar.jar;classes:.javac -d classes -classpath c:\somepath\somejar.jar;classes:javac -d classes -classpath c:\somepath\somejar.jar;classesjavac -d classes -classpath c:\somepath\somejar.jar;工作完全一樣。它們生成完全相同的文件(每個 226 字節),當我在 Web 容器中部署它們時,它們的工作方式完全相同。.class那么這些符號有什么意義呢?以上四個命令有何不同?任何人都可以清楚地解釋這一點,請?javac ..
1 回答

慕容708150
TA貢獻1831條經驗 獲得超4個贊
使用類路徑值中使用的 分隔符是為了將多個文件夾分隔為類路徑的值。;
:
;
用于分隔 Windows 操作系統下的文件夾。
:
用于分隔 *nix 操作系統下的文件夾。
結合該參數意味著編譯的文件將放置在 classes 文件夾中,而不是基于包層次結構的標準放置。-d classes
classes:.
.class
因此,將類作為類路徑的附加參數包含在內,允許在編譯新的 java 類時引用以前編譯的類文件。是對從中執行命令的目錄 (當前工作目錄) 的類路徑引用。.
javac
這里唯一的問題是兩種分隔符類型的混合。為什么這樣做-我不知道。
添加回答
舉報
0/150
提交
取消