2 votes

Eclipse PyDev : __module_not_in_the_pythonpath__

CentOS Linux release 7.6.1810 (Core)

openjdk 11 2018-09-25

Python 3.6.9

Eclipse IDE for RCP and RAP Developers Version: 2019-06 (4.12.0)

PyDev 7.0.3.2018.11082356

Je débute avec PyDev et je suis assez nouveau en Python.

J'ai un projet Python composé de plusieurs dizaines de projets/plugins Eclipse.

Quand je survole une méthode Python dans notre code pour obtenir plus d'informations ou l'utiliser dans des outils, je reçois ce message d'erreur :

Trouvé dans : __module_not_in_the_pythonpath__

entrer la description de l'image ici

Chaque projet Eclipse a été importé de cette manière :

Importer > Git > Projets depuis Git > Dépôt local existant > Sélectionner un dépôt (en choisissant tous les projets du dépôt, puis passant à "Terminer" : )

Chaque projet Eclipse contient :

  1. un répertoire "src" contenant des fichiers *.java
  2. un répertoire "util" contenant des fichiers *.py
  3. un fichier .project généré automatiquement (sous-peuplé)
  4. un fichier .pydevproject généré automatiquement (sous-peuplé)

entrer la description de l'image ici

Le fichier .project que j'ai :

entrer la description de l'image ici

Le fichier .pydevproject que j'ai :

entrer la description de l'image ici

Évidemment, d'après cette FAQ, ces fichiers .project et .pydevproject doivent être mis à jour.

Le répertoire "util" est le répertoire parent pour tous les fichiers *.py des projets. Il n'a pas de fichier __init__.py. Dois-je en mettre un dans le répertoire "util" pour résoudre cette erreur ? Un seul fichier __init__.py dans le répertoire "util" sera-t-il suffisant pour que Python et Eclipse trouvent tous les fichiers *.py dans les sous-répertoires en dessous ?

1voto

Fabio Zadrozny Points 11951

Je ne suis pas sûr que le module n'ait pas été réellement importé en tant que projet PyDev (car la racine du projet n'était pas affichée dans la capture d'écran).

Si c'est le cas, vous pouvez convertir votre projet en projet PyDev en cliquant avec le bouton droit dessus et en choisissant PyDev > Définir comme projet PyDev.

Après l'avoir configuré en tant que projet PyDev, vous devez définir chaque dossier qui se trouve dans le PYTHONPATH en tant que dossier source (notez que seul l'entrée du PYTHONPATH doit être configurée de cette manière, pas les sous-dossiers).

Vous pouvez soit faire un clic droit sur le dossier et choisir PyDev > Définir comme dossier source, ou si vous avez trop d'entrées, vous pouvez créer un script pour générer vos fichiers .pydevproject avec ces entrées, comme expliqué dans http://www.pydev.org/faq.html#ImportExistingSources.

Notez que vous ne devriez pas ajouter ces dossiers au PYTHONPATH de l'interpréteur (les dossiers ajoutés au PYTHONPATH dans l'interpréteur sont partagés entre tous les projets, alors que les dossiers ajoutés en tant que dossiers source sont valables uniquement pour un projet - si vous avez plusieurs projets, PyDev composera le PYTHONPATH final en fonction de l'interpréteur + projet + projets référencés).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X