2012-05-23 12 views
9

Come faccio a dare il percorso per il file .dll o .so in NetBeans per caricare la libreria utilizzandodando 'java.library.path' in NetBeans per dll/.so file

System.loadLibrary("Foo") 

ho letto this on netbeans page but couldn't help me. come dà l'errore di collegamento insoddisfatto.

Queste sono le due cose che ho provato:

Nel seguente snapshot ho creato una cartella lib all'interno del progetto NetBeans e posto i file dll al suo interno.

enter image description here

Nella seconda snapshot ho creato una cartella all'interno della cartella libmodules e messo tutti i file all'interno della cartella dlllib come indicato nel link.

enter image description here

Ma entrambi mi danno unsatisfied link error eccezione. Come posso impostare java.library.path in netbeans in modo da poter testare direttamente l'applicazione da netbeans, senza dover andare a scrivere sul terminale?

+0

Questo funziona solo per le applicazioni che utilizzano la piattaforma NetBeans, non per le normali applicazioni Java SE. Rispondi qui: http://stackoverflow.com/questions/8361728/missing-file-in-java-library-path –

risposta

26

Funziona ora. Un po 'di impostazione che devi fare con il tuo IDE Netbean. Solo per Netbean IDE.

seguire i passaggi: -

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

Il suo lavoro al 100%. L'ho fatto nel mio progetto.

+0

Come si può fare questo con 2 percorsi di libreria diversi? Dì uno nel mio file desktop e un altro nei miei file di programma, file? – fftk4323

+1

@ fftk4323 '-Djava.library.path =" percorso1; percorso2; percorso3 "' ... – Flawyte

+1

Grazie, ho trovato che funziona -Djava.library.path = "percorso1"; "percorso2" pure. Solo una nota per tutti coloro che stanno leggendo questo, non fare quello che ho fatto e inserire il nome della DLL nel percorso del file. – fftk4323

1

Sto usando Mac OS X Yosemite e Netbeans 8.02, ho ricevuto lo stesso errore e la soluzione semplice che ho trovato è come sopra, questo è utile quando è necessario includere la libreria nativa nel progetto. Il prossimo per 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 

Spero che possa essere utile per qualcuno. Il link in cui ho trovato la soluzione è qui: java.library.path – What is it and how to use

0

Per me il suggerimento di JDeveloper non ha funzionato. Tuttavia, il metodo che ho incontrato in questo primo pomeriggio funziona a portata di mano. È per netbeans 8.02 e Visual Studio 2013 ha generato dll.

  1. creare un pacchetto (ad esempio, "dll") sotto [Pacchetti Fonte] nodo di NetBeans progetto
  2. put/copiare un file dll (ad esempio, simpleDLL.dll) nel pacchetto (ad esempio, " dll ")
  3. sul [biblioteche] nodo del progetto NetBeans, fare clic destro e scegliere 'Aggiungi Jar/cartella ...',
  4. passare alla cartella (" src "), che contiene la cartella ("dll") per il pacchetto creato nel passaggio 1 sopra (potrebbe essere "... \ src \ dll" nel mio esempio), selezionare la cartella del pacchetto ("dll") e fare clic sul pulsante [Apri] per selezionarlo.

- ora è necessario aggiungere una cartella ("dll") (che contiene il file dll {simpleDLL.dll}) al nodo Librerie del progetto.

Questo è tutto. Dovrebbe funzionare! Buona fortuna.

1

se si sta lavorando su "Moduli" NetBeans

DLL o SOS può essere collocato nel rilascio della cartella/modules/lib/in fonti di un progetto del modulo (guardare nella scheda File). Ciò li farà apparire nell'NMM finale o nell'applicazione in una sottodirectory lib sotto il punto in cui risiede il JAR del modulo. Quindi utilizzare System.loadLibrary come al solito.

Problemi correlati