Je suis en mesure d’exécuter un exemple de programme hadoop à partir de l’invite de commande et j’essaie d’exécuter le même programme à partir d’Eclipse, afin de pouvoir le déboguer et mieux le comprendre.
Pour le programme en ligne de commande, certaines variables d’environnement sont définies dans le .bashrc
et les mêmes sont lues en tant que System.getenv().get("HADOOP_MAPRED_HOME")
dans le programme hadoop. Mais lorsque je System.getenv().get("HADOOP_MAPRED_HOME")
un programme java avec System.getenv().get("HADOOP_MAPRED_HOME")
, à partir d’Eclipse, je suis nul.
J’ai essayé de passer -DHADOOP_MAPRED_HOME=test
parameters de la VM dans les configurations d’exécution d’Eclipse, mais toujours devenir nul dans le programme autonome. Comment rendre les variables d’environnement visibles dans Eclipse? Lorsque je parcoure System.getenv()
dans Eclipse, je vois beaucoup de variables comme DISPLAY
, USER
, HOME
et autres. Où sont-ils fixés? J’utilise Ubuntu 11.04.
Le fichier .bashrc est utilisé pour définir les variables utilisées par les shells de connexion interactifs. Si vous voulez les variables d’environnement disponibles dans Eclipse, vous devez les placer dans / etc / environment.
Vous pouvez également définir une variable d’environnement visible uniquement dans Eclipse.
Allez dans Exécuter -> Exécuter les configurations … et sélectionnez l’onglet “Environnement”.
Vous pouvez y append plusieurs variables d’environnement spécifiques à votre application.
J’ai créé un plugin eclipse pour cela, car j’avais le même problème. N’hésitez pas à le télécharger et à y consortingbuer.
Il est encore en développement, mais il fait déjà son travail pour moi.
https://github.com/JorisAerts/Eclipse-Environment-Variables
Vous pouvez définir le répertoire de base Hadoop en envoyant un fichier -Dhadoop.home.dir à la machine virtuelle. Pour envoyer ces parameters à toutes vos applications que vous exécutez dans eclipse, vous pouvez les configurer dans Window-> Preferences-> Java-> Installed JREs-> (sélectionnez votre installation JRE) -> Edit .. -> (définissez la valeur dans la zone de texte “Arguments de la machine virtuelle par défaut”). Vous pouvez remplacer $ {HADOOP_HOME} par le chemin d’access à votre installation Hadoop.
Vous pouvez également lancer une éclipse dans un shell.
Vous exportez l’enronment, avant d’appeler eclipse.
Par exemple #!/bin/bash export MY_VAR="ADCA" export PATH="/home/lala/bin;$PATH" $ECLIPSE_HOME/eclipse -data $YOUR_WORK_SPACE_PATH
Ensuite, vous pouvez avoir plusieurs instances sur eclipse avec leur propre environnement custome, y compris l’espace de travail.
Pour les personnes qui souhaitent remplacer la variable d’environnement du système d’exploitation dans le projet Eclipse, reportez-vous également à @MAX answer.
C’est utile lorsque vous avez un projet eclipse de fin de projet release sur la même machine.
Le projet de version peut utiliser la variable d’environnement du système d’exploitation pour l’utilisation du test et le projet eclipse peut le remplacer pour l’utilisation du développement.