如何設置整個Eclipse項目的java.library.path?我正在使用依賴於操作系統特定文件並需要查找.dll/.so/.jnilib的Java庫。但是應用程序總是退出,並顯示錯誤消息,指出這些文件在庫路徑中找不到。如何從Eclipse設置java.library.path
我想配置整個項目來使用庫路徑。我試圖添加路徑作爲虛擬機參數在Eclipse中的一些運行配置,但沒有奏效。
如何設置整個Eclipse項目的java.library.path?我正在使用依賴於操作系統特定文件並需要查找.dll/.so/.jnilib的Java庫。但是應用程序總是退出,並顯示錯誤消息,指出這些文件在庫路徑中找不到。如何從Eclipse設置java.library.path
我想配置整個項目來使用庫路徑。我試圖添加路徑作爲虛擬機參數在Eclipse中的一些運行配置,但沒有奏效。
不要亂搞圖書館的路徑! Eclipse自己構建它!
相反,進入您項目的庫設置,並且對於需要本機庫的每個jar/etc,請在庫選項卡中展開它。在那裏的樹視圖中,每個庫都有用於source/javadoc和本機庫位置的項目。
具體做法是:選擇Project
,右鍵 - >屬性/Java構建路徑/庫選項卡中,選擇一個.jar,展開它,選擇本地庫位置,單擊編輯,文件夾選擇器對話框將出現)
在命令行中混淆庫路徑應該是你最後的努力,因爲你可能會破壞已經由eclipse正確設置的東西。
好吧,這似乎工作。現在正確的路徑實際顯示在錯誤消息中。找不到所需的庫:/Users/janusz/Documents/workspace/SlideSelector/lib/libOpenCV.jnilib。該文件完全位於該目錄中。似乎是另一個錯誤 – Janusz 2009-06-08 20:39:22
但是,如果你有多個文件夾添加,這是如何工作的? – Dan 2010-06-30 11:57:01
這是一個很好的問題。爲什麼你爲一個jar有多個本地庫的文件夾?我很確定有一種方法可以將本地庫本身嵌入到jar中,這樣可能是要走的路? – 2010-06-30 16:00:51
如果要添加它作爲一個VM參數,請確保您有-D
前綴它:
-Djava.library.path=blahblahblah...
看到這篇文章:http://stackoverflow.com/a/2309723/510583。 -Djava.library.path =「$ {workspace_loc:project} \ lib; $ {env_var:PATH}」 – leo 2012-01-27 07:34:17
單擊運行
點擊調試...
新的Java應用程序
點擊參數標籤
在第二個盒子(VM Arguments)中添加-D條目
-Xdebug -verbose:gc -Xbootclasspath/p:jar/vbjorb.jar;jar/oracle9.jar;classes;jar/mq.jar;jar/xml4j.jar -classpath -DORBInitRef=NameService=iioploc://10.101.2.94:8092/NameService
etc ...
另外 - 在運行配置中,轉至「Common」選項卡並在項目中選擇一個位置以保存運行配置。這允許您檢入該運行配置(xxxx.launch文件),以便您團隊中的其他人可以重新使用它。 – 2009-06-05 20:48:14
這是唯一與我合作的東西,謝謝 – 2011-03-17 21:05:08
對於給定的應用程序啓動時,您可以根據吉姆說做到這一點。
如果你想將其設置爲整個工作區,你還可以將其設置在
Window->
Preferences->
Java->
Installed JREs
每個JRE有一個「默認VM參數」(我相信,如果任何VM ARG遊戲設定將被完全忽略對於運行配置)。
您甚至可以設置不同的JRE/JDK使用不同的參數,並使一些項目使用一個,其他項目使用另一個。
您可以簡單地將-Djava.library.path=yourPath
添加到eclipse.ini
。
只需將* .dll文件添加到您的c:/ windows
您可以獲取java.library。從後續代碼路徑:然後添加任何路徑下的dll文件你
import java.util.logging.Logger;
public class Test {
static Logger logger = Logger.getLogger(Test.class.getName());
public static void main(String[] args) {
logger.info(System.getProperty("java.library.path"));
}
}
除經批准的答案中描述的方式,還有另一種方式,如果你在你的項目中單獨的本地庫。
我想有另一個想要設置java.library.path的原因。 Subversion附帶有許多庫,除非java.library.path可以附加,否則Eclipse將不會看到這些庫。例如,我在OS-X上,因此這些庫位於\ opt \ subversion \ lib下。有很多,我想保留它們在哪裏(不要將它們複製到標準的lib目錄中)。
項目設置不會解決這個問題。
另一種解決方案是打開'運行配置',然後在'環境'選項卡中設置夫婦{路徑,價值}。
如用於增加位於項目的根目錄的「lib」目錄下,
Path <- ${workspace_loc:name_of_the_project}\lib
的解決方案中沒有上述工作對我來說(Eclipse的朱諾與JDK 1.7_015)。當我將它們從project_folder/lib移動到project_folder時,Java只能找到這些庫。
有時候我們沒有通過直接右鍵單擊項目來獲得Java Build Path。 然後轉到屬性....
然後單擊Java構建路徑上
點擊選項卡中添加外部JAR,並給其中u已經儲存罐電腦文件的路徑。
請記住在PATH中包含本機庫文件夾。
最簡單的方法就是使用eclipse IDE本身。轉到菜單並設置構建路徑。使其指向目錄中的JAVA JDK和JRE文件路徑。之後,您可以檢查將要設置編譯文件的構建路徑。在bin文件夾默認情況下。最好的事情是讓Eclipse來處理自身的構建路徑,並只對其進行編輯類似於上面
這裏給出的解決方案是另一種修復:
我的編譯系統(搖籃)添加所需的原生庫(DLL)到Eclipse構建路徑(右鍵單擊項目 - >屬性 - > Java構建路徑 - >庫)。告訴構建系統不要將本地dll庫添加到Eclipse類路徑中解決了這個問題。
我使用的是Mac OS X Yosemite和Netbeans 8.02,我得到了同樣的錯誤,我發現的簡單解決方案就像上面這樣,當您需要將本地庫包含在項目中時,這非常有用。所以做下了Netbeans的:
1.- Right click on the Project
2.- Properties
3.- Click on RUN
4.- VM Options: java -Djava.library.path="your_path"
5.- for example in my case: java -Djava.library.path=</Users/Lexynux/NetBeansProjects/NAO/libs>
6.- Ok
我希望它可以成爲有用的人。 在那裏我找到了解決辦法的鏈接是在這裏: java.library.path – What is it and how to use
您可以在Eclipse中添加VM參數。
示例: -Djava.ext.dirs = cots_lib
其中cots_lib是外部文件夾的庫。
我已經通過將它添加爲VM參數來完成它,它確實工作。你究竟做了什麼? – 2009-06-05 19:31:35