2013-02-18 34 views
0

我是新來的Java包裝,我試圖編譯Java代碼及以下兩件事情javac的工作不

  • Java的編譯代碼和地方的.java文件在src文件夾
  • Java的編譯代碼和希望的地方以.com文件夾中的.class文件

所以我想下面的命令

javac -s .\src -d .\com Planet.java 

命令無誤地成功運行;類文件放置在com文件夾中,但源文件仍未移動到src文件夾。我在當前文件夾中手動創建了文件夾com和src。 Planet.java也在當前文件夾中。

├───com 
│ └───test 
└───src 

我是否在這裏缺少任何技巧?請糾正我。

回答

0

javac命令不會實際移動您的源文件。 javac中的-s選項用於告訴javac放置生成的源文件的位置,而不是用於移動您的源文件。

參見:http://docs.oracle.com/javase/6/docs/technotes/tools/solaris/javac.html

+0

但是src文件夾裏還是沒有生成文件,有什麼想法? – 2013-02-19 05:17:25

+0

剛剛做了詳細的介紹,並沒有發現與-s> javac -verbose -s。\ src -d。\ com相關的任何細節。Planet.java [解析開始Planet。java] [解析完成14ms] [源文件的搜索路徑:..... [loading java \ lang \ Enum.class(java \ lang:Enum.class)] [loading java \ lang \ Comparable。 (java \ io \ Serializable.class)加載java \ io \ Serializable.class(加載java \ lang:Object.class) ] [loading java \ lang \ String.class(java \ lang:String.class)] [checking test.Planet] – 2013-02-19 06:25:31

+0

[loading java \ lang \ CloneNotSupportedException.class(java \ lang:CloneNotSupportedException.class)] [加載java \ lang \ Class.class(java \ lang:Class.class)] [正在加載java \ lang \ System.class(java \ lang:System.class)] [正在加載java \ io \ PrintStrea (java \ io:PrintStream.class)] [加載java \ io \ FilterOutputStream.class(java \ io:FilterOutputStream.class)] [加載java \ io \ OutputStream.class(java \ io:OutputStream。 (java \ lang \ Double.class)] [loading java \ lang \ Number.class(java \ lang:Number.class)] [正在加載java \ util \ Locale (java \ util:Locale.class)] – 2013-02-19 06:27:54

0

爲了在cmd使用javac,JDK(Java開發工具包),必須在系統上安裝。

javac.exe是JDK的bin文件夾中(如:C:\Program Files\Java\jdk1.7.0_45\bin)和在JRE的bin文件夾(C:\Program Files\Java\jre7\bin),因爲JRE只是一個運行時環境(但你需要的開發工具包,以便能夠將源代碼編譯) 。

您應該將JDK的bin目錄(C:\Program Files\Java\jdk1.7.0_45\bin)附加到PATH系統環境變量。

如果你沒有JDK,請從以下鏈接下載:
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

參考線程JDK與JRE:
What is the difference between JDK and JRE?

步驟:

  1. 安裝JDK
  2. o筆命令提示
  3. 類型cd C:\Program Files\Java\jdk1.7.0_45\bin,按Enter鍵(路徑可基於JDK的版本和32位/ 64位操作系統版本)
  4. 類型javac,按Enter

完成。

+0

它根本沒有回答這個問題。 – Sk8erPeter 2014-03-26 17:05:43