Comment définir le Java.library.path pour un projet Eclipse complet? J'utilise une bibliothèque Java qui repose sur des fichiers spécifiques du système d'exploitation et doit trouver un fichier .dll/.so/.jnilib. Mais l'application se ferme toujours avec un message d'erreur indiquant que ces fichiers ne sont pas trouvés sur le chemin de la bibliothèque.
Je voudrais configurer tout ce projet pour utiliser le chemin de la bibliothèque. J'ai essayé d'ajouter le chemin en tant qu'argument VM à certaines configurations d'exécution dans Eclipse, mais cela n'a pas fonctionné.
Ne jouez pas avec le chemin de la bibliothèque! Eclipse le construit lui-même!
A la place, accédez aux paramètres de bibliothèque de vos projets et, pour chaque fichier jar/etc nécessitant une bibliothèque native, développez-le dans l'onglet Bibliothèques . Dans l'arborescence, chaque bibliothèque contient des éléments pour les emplacements source/javadoc et les bibliothèques natives.
Spécifiquement: sélectionnez Project
, clic droit -> Propriétés / Chemin de construction Java / Bibliothèques onglet, sélectionnez un fichier .jar, développez-le, sélectionnez Emplacement de la bibliothèque native , cliquez sur Edit , la boîte de dialogue de sélection de dossier apparaîtra)
Vous devez jouer avec le chemin de la bibliothèque sur la ligne de commande devrait être votre dernier effort, car vous pourriez casser quelque chose qui est déjà correctement défini par Eclipse.
Si vous l'ajoutez en tant qu'argument VM, assurez-vous de le préfixer avec -D
:
-Djava.library.path=blahblahblah...
À l'exception de la manière décrite dans la réponse approuvée, il existe une autre méthode si votre projet contient des bibliothèques natives uniques.
Pour un lancement d’application donné, vous pouvez le faire comme le dit jim.
Si vous souhaitez le définir pour l’ensemble de l’espace de travail, vous pouvez également le définir sous
Window->
Preferences->
Java->
Installed JREs
Chaque JRE a un "argument VM par défaut" "(qui, à mon avis, sont complètement ignorés si un argument VM est défini pour une configuration d'exécution.)
Vous pouvez même configurer différents JRE/JDK avec différents paramètres et faire en sorte que certains projets en utilisent un, d'autres en utilisent un autre.
Vous pouvez simplement ajouter -Djava.library.path=yourPath
au Eclipse.ini
.
Ajoutez simplement les fichiers * .dll à votre c:/windows
Vous pouvez obtenir le fichier Java.library.path à partir des codes suivants: et ensuite vous ajouter des fichiers dll sous n’importe quel chemin.
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"));
}
}
Je pense qu'il y a une autre raison de vouloir définir Java.library.path. Subversion est livré avec de nombreuses bibliothèques et Eclipse ne les verra que si Java.library.path peut être ajouté. Par exemple, je suis sur OS-X, les bibliothèques sont donc sous\opt\Subversion\lib. Il y en a beaucoup et j'aimerais les garder où ils sont (ne pas les copier dans un répertoire lib standard).
Les paramètres du projet ne résoudront pas le problème.
Aucune des solutions ci-dessus n'a fonctionné pour moi (Eclipse Juno avec JDK 1.7_015). Java n'a pu trouver les bibliothèques que lorsque je les ai déplacées de project_folder/lib vers project_folder.
Cliquez sur Exécuter
Cliquez sur Debug ...
Nouvelle application Java
Cliquez sur l'onglet Arguments
dans la 2e zone (Arguments de la machine virtuelle), ajoutez l’entrée -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...
Une autre solution consisterait à ouvrir la "configuration d'exécution" puis, dans l'onglet "Environnement", à définir le couple {Chemin, Valeur}.
Par exemple, pour ajouter un répertoire 'lib' situé à la racine du projet,
Path <- ${workspace_loc:name_of_the_project}\lib
N'oubliez pas d'inclure le dossier de la bibliothèque native dans PATH.
J'utilise Mac OS X Yosemite et Netbeans 8.02. J'ai la même erreur et la solution simple que j'ai trouvée est la même que ci-dessus. C'est utile lorsque vous devez inclure une bibliothèque native dans le projet. Alors faites la prochaine pour 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
J'espère que cela pourra être utile à quelqu'un . Le lien où j'ai trouvé la solution est ici: Java.library.path - Qu'est-ce que c'est et comment l'utiliser
Parfois, nous n’obtenons pas le chemin de construction Java en cliquant directement sur project .
Puis cliquez sur le chemin de construction Java
Cliquez sur l'onglet Ajouter des fichiers externes et indiquez le chemin du fichier de votre ordinateur où vous avez stocké des fichiers.
Voici un autre correctif:
Mon système de construction (Gradle) a ajouté une bibliothèque native requise (dll) au chemin de construction Eclipse (clic droit sur Projet -> Propriétés -> Chemin de construction Java -> Bibliothèques). Dire au système de construction de ne pas ajouter la bibliothèque de DLL native au chemin de classe Eclipse a résolu le problème.
vous pouvez ajouter un argument vm dans votre Eclipse.
Exemple: - Djava.ext.dirs = cots_lib
où cots_lib est votre bibliothèque de dossiers externes.