2017-07-26 95 views
0

我在src文件夾5個.java文件和lib文件夾 許多依賴罐子在編譯時與我面對錯誤的罐子.java文件的依賴罐子,編譯Java文件,使用Windows Cmd的

src \ Grapher.java:12:錯誤:程序包org.jfree.chart不存在 import org.jfree.chart。*;

我的目錄內在張力結構是,
C:\繪圖器的\ src *的.java
C:\繪圖器\ lib中的* .jar

我使用commond 的javac -cp; LIB/*的.jar的src/*。java的

+0

看起來確實不錯。你有沒有嘗試按名稱列出jar文件?而不是使用「*」? – GhostCat

+0

不!因爲對於不同的java文件有許多依賴不同的罐子 – Ram

+0

然後,只需進行一個簡單的實驗,然後添加freechar罐子的全名並查看是否改變了任何東西。 – GhostCat

回答

0
  1. 請確保您有JFreeChart的罐子在你的lib文件夾
  2. 您必須包裝的-cp參數括號
  3. 您沒有提供源路徑。

試試這個:

javac -classpath "lib/*" -sourcepath src src/*.java 

注:此方法僅當您的Java文件恰好位於src文件夾中。如果你在你的類中有包聲明,你必須指定包結構。

例如:src/com/company/*.java

+0

據我所知,-sourcepath的使用是可選的。當告訴編譯src中的所有文件時(並且沒有使用子包) - 使用它的意義何在? – GhostCat

+0

根據文檔http://docs.oracle.com/javase/8/docs/technotes/tools/windows/javac.html,如果classpath包含具有源代碼的文件夾,則可以跳過源路徑。但情況並非如此。 –

+0

@GhostCat你是對的,在本地嘗試 - 它的作品。你能否告訴我關於文件的鏈接,它解釋了爲什麼它可以被跳過。 –