我使用絕對路徑導入外部庫。但我有兩個工作環境,並在Linux和Windows之間切換。項目從SVN下載。所以我想知道我是否可以通過相對路徑導入這些庫。如何通過eclipse中的相對路徑導入外部庫?
感謝
我使用絕對路徑導入外部庫。但我有兩個工作環境,並在Linux和Windows之間切換。項目從SVN下載。所以我想知道我是否可以通過相對路徑導入這些庫。如何通過eclipse中的相對路徑導入外部庫?
感謝
你應該聲明一個變量(Java構建路徑 - >添加變量... - >配置變量... - >新建)來設置各個系統(例如FOO_BAR_HOME)上的變化路徑。
比你的變量添加到庫和編輯它指向你的圖書館,像
%FOO_BAR_HOME%/lib/foobar.jar
看看對於使用現有的變量。
另外,您可以將庫放置在項目中(例如子文件夾'lib')。如果你從這個位置添加庫('添加罐子'...'不添加外部罐子...'),它將通過相對路徑添加。
我做得很簡單。我在我的類路徑中有一個絕對路徑的庫:
/home/glauco/workspace/ltClubs/lib/swingx-core-1.6.2.jar
所以我只是刪除它的絕對路徑,它的工作原理。現在是相對的xD:
lib/swingx-core-1.6.2.jar
這應該是以前的答案評論,但是從本網站的怪信譽系統迫使我發佈一個新的答案,而不是...(沒有評論)
你可以使用相對路徑,但是你缺少'./'。取而代之的
lib/swingx-core-1.6.2.jar
你應該使用
./lib/swingx-core-1.6.2.jar
嘿,我是有這個問題爲好,但我可以爲那些誰想要一個替代的解決方案,以保持所需的庫本地,但外部 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時,引用應該仍然有效。請記住,"./"
在開始時是必要的。只有"../"
將無法工作,或者至少它不適合我。
將包含依賴關係的文件夾添加到JAVA項目中。選擇並右鍵單擊相關性,「添加到構建路徑」作爲上下文菜單彈出。這使用相對路徑而不是絕對路徑添加依賴關係。
謝謝Claszen。我用「添加罐子」代替「外部罐子」。有用。 – ablimit 2011-02-13 15:18:06
我需要使用變量的想法,但我無法弄清楚如何使用它。當我點擊編輯...在我的一個外部庫上時,我得到一個Finder窗口(我在OSX Lion上),它允許我導航到我的罐子,但沒有任何東西允許我編輯該路徑來使用我的變量。有任何想法嗎? – SilithCrowe 2012-02-20 17:16:05