2012-05-23 66 views
9

Làm thế nào để tôi cung cấp cho các đường dẫn cho các .dll hoặc .so tập tin trong NetBeans để tải thư viện sử dụngcho 'java.library.path' trong NetBeans cho .dll/.so file

System.loadLibrary("Foo") 

tôi đọc this on netbeans page but couldn't help me. như nó cung cấp cho các lỗi liên kết không hài lòng.

Đây là hai điều tôi đã cố gắng:

Trong ảnh chụp sau tôi đã tạo ra một thư mục lib bên trong dự án NetBeans và đặt dll file bên trong nó.

enter image description here

Trong ảnh chụp thứ hai tôi đã tạo ra một thư mục bên trong thư mục libmodules và đặt tất cả các tập tin bên trong dlllib thư mục như đã nêu trong link.

enter image description here

Nhưng cả hai trong số họ cho tôi unsatisfied link error ngoại lệ. Làm thế nào để tôi đặt java.library.path trong netbeans để tôi có thể trực tiếp kiểm tra ứng dụng từ netbeans, mà không cần phải đi và viết trên thiết bị đầu cuối?

+0

Điều đó chỉ hoạt động đối với các ứng dụng sử dụng nền tảng NetBeans, không áp dụng cho các ứng dụng Java SE bình thường. Trả lời ở đây: http://stackoverflow.com/questions/8361728/missing-file-in-java-library-path –

Trả lời

26

Hiện tại nó đang hoạt động. Một số thiết lập nhỏ mà bạn phải làm với IDE Netbean của bạn.Chỉ là của Netbean IDE.

Thực hiện theo các bước: -

==>Right click on the Project 
==>Properties 
==>Click on RUN 
==>VM Options : -Djava.library.path="C:\Your Directory where Dll is present" 
==>Ok 

của nó làm việc 100%. Tôi đã làm điều này trong dự án của riêng tôi.

+0

Làm thế nào bạn có thể làm điều này với 2 đường dẫn thư viện khác nhau? Nói một trong tập tin máy tính để bàn của tôi và một trong các tập tin chương trình của tôi, tập tin? – fftk4323

+1

@ fftk4323 '-Djava.library.path =" path1; path2; path3 "' ... – Flawyte

+1

Cảm ơn, tôi thấy nó hoạt động -Djava.library.path = "path1"; "path2". Chỉ cần một lưu ý cho tất cả những người đang đọc này, Đừng làm những gì tôi đã làm và nhập tên của dll vào đường dẫn tập tin. – fftk4323

1

Tôi đang sử dụng Mac OS X Yosemite và Netbeans 8.02, tôi gặp lỗi tương tự và giải pháp đơn giản mà tôi đã tìm thấy giống như trên, điều này rất hữu ích khi bạn cần đưa thư viện gốc vào dự án. Vì vậy, hãy làm tiếp theo cho 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 

Tôi hy vọng nó có thể hữu ích cho ai đó. Liên kết nơi tôi tìm thấy giải pháp có tại đây: java.library.path – What is it and how to use

0

Với tôi đề xuất của JDeveloper không hoạt động. Tuy nhiên, phương pháp mà tôi bắt gặp vào đầu giờ chiều này hoạt động rất thuận tiện. Nó dành cho netbeans 8.02 và Visual Studio 2013 tạo dll.

  1. tạo ra một gói (ví dụ, "dll") dưới [Source Packages] nút của netbeans dự án
  2. đặt/sao chép một tập tin dll (ví dụ, simpleDLL.dll) vào gói (ví dụ: " dll ")
  3. trên nút [Thư viện] của dự án netbeans, nhấp chuột phải và chọn" Thêm thư mục/thư mục ... ",
  4. điều hướng đến thư mục (" src ") chứa thư mục ("dll") cho gói mà bạn đã tạo ở bước 1 ở trên (có thể là "... \ src \ dll" trong ví dụ của tôi), chọn thư mục gói ("dll") và nhấp vào nút [Mở] để chọn nó.

- bây giờ bạn nên thêm một thư mục ("dll") (có chứa tệp dll {simpleDLL.dll}) vào nút Libraries của dự án.

Vậy đó. Nó sẽ hoạt động! Chúc may mắn.

1

NẾU bạn đang làm việc trên "NetBeans Modules"

DLL hoặc SOS có thể được đặt trong thư mục phát hành/modules/lib/trong nguồn một module dự án (xem trong tab Files). Điều này sẽ làm cho chúng xuất hiện trong NBM cuối cùng hoặc ứng dụng trong thư mục con lib bên dưới nơi JAR của mô-đun nằm. Sau đó, chỉ cần sử dụng System.loadLibrary như bình thường.

Các vấn đề liên quan