2011-02-12 72 views

回答

42

你應該聲明一個變量(Java構建路徑 - >添加變量... - >配置變量... - >新建)來設置各個系統(例如FOO_BAR_HOME)上的變化路徑。

比你的變量添加到庫和編輯它指向你的圖書館,像

%FOO_BAR_HOME%/lib/foobar.jar 

看看對於使用現有的變量。

另外,您可以將庫放置在項目中(例如子文件夾'lib')。如果你從這個位置添加庫('添加罐子'...'不添加外部罐子...'),它將通過相對路徑添加。

+6

謝謝Claszen。我用「添加罐子」代替「外部罐子」。有用。 – ablimit 2011-02-13 15:18:06

+2

我需要使用變量的想法,但我無法弄清楚如何使用它。當我點擊編輯...在我的一個外部庫上時,我得到一個Finder窗口(我在OSX Lion上),它允許我導航到我的罐子,但沒有任何東西允許我編輯該路徑來使用我的變量。有任何想法嗎? – SilithCrowe 2012-02-20 17:16:05

4

我做得很簡單。我在我的類路徑中有一個絕對路徑的庫:

/home/glauco/workspace/ltClubs/lib/swingx-core-1.6.2.jar 

所以我只是刪除它的絕對路徑,它的工作原理。現在是相對的xD:

lib/swingx-core-1.6.2.jar 
3

這應該是以前的答案評論,但是從本網站的怪信譽系統迫使我發佈一個新的答案,而不是...(沒有評論)

你可以使用相對路徑,但是你缺少'./'。取而代之的

lib/swingx-core-1.6.2.jar 

你應該使用

./lib/swingx-core-1.6.2.jar 
3

嘿,我是有這個問題爲好,但我可以爲那些誰想要一個替代的解決方案,以保持所需的庫本地,但外部 Java項目的目錄。

首先,使用通常的「添加外部庫/ Jar」方法添加你想要的庫。

如果您進入Java Project的主目錄,應該會看到一個.classpath文件。用你希望的任何文本編輯器編輯它,然後查找引用你添加的庫的行。然後,說你的圖書館被稱爲lib.jar,並且你有它在你的項目之外的一個級別。

比方說行說:

<classpathentry kind="lib" path="C:/Users/Public/workspace/lib.jar"/>

而不是移動lib.jar到項目的目錄,你可以改變這一行說:

<classpathentry kind="lib" path="./../lib.jar"/>

和你的Java構建路徑將被更新以在當前項目上一級的目錄中查找它。

另外,據我所知,如果您運行的是Mac或任何基於Unix的操作系統,那麼.classpath文件將被隱藏。爲了訪問它,您可以嘗試從終端打開它,瀏覽到Java Project使用的目錄(實際的項目文件夾本身,而不是工作區),然後使用vi或vim ".classpath"。請記住,使用ls甚至ls -a可能無效,但相信它會在那裏。

一旦你將它改變到指定的位置,保存文件,當你回到eclipse時,引用應該仍然有效。請記住,"./"在開始時是必要的。只有"../"將無法​​工作,或者至少它不適合我。

0

將包含依賴關係的文件夾添加到JAVA項目中。選擇並右鍵單擊相關性,「添加到構建路徑」作爲上下文菜單彈出。這使用相對路徑而不是絕對路徑添加依賴關係。