2013-01-07 4 views
5

Je viens d'installer correctement la bibliothèque google gdata pour python (le script tourne bien). Je travaille avec pydev en éclipse. J'ai importé un module mais la commande d'importation reste rouge et bouclé comme vous pouvez le voir sur la capture d'écran.importation non résolue dans eclipse pydev

enter image description here

J'ajouté ce qui suit und ProjectName-> Propriétés, mais il ne fonctionne pas (même si le chemin est correct definitly): enter image description here

Que dois-je faire de telle sorte que l'importation est resovled correctement par éclipse?

Répondre

11

Si vous avez déclaration d'importation comme ceci: import gdata.spreadsheet.service alors vous devez vous assurer que le PYTHONPATH il y a un répertoire qui contient gdata sous-répertoire (et gdata devrait avoir sous-répertoire spreadsheet avec service.py fichier module).

Dans votre cas: si votre répertoire est gdata dans le répertoire site-packages sur la distribution de python, alors vous devez vous assurer que site-packages est sur PYTHONPATH (non site-packages/gdata/spreadsheet que vous essayiez de mettre là-bas).

Regardez http://docs.python.org/2/tutorial/modules.html dans la section "Paquets 6.4" par exemple et référence.

En PyDev vous pouvez modifier le contenu de PYTHONPATH en deux endroits:

  • Fenêtre -> PyDev -> Interprète - Python
  • Dans la fenêtre que vous avez utilisé

Je vous suggère d'abord vérifier que le répertoire site-packages est dans votre Window -> PyDev -> Interpreter - Python settings -> System PYTHONPATH. Il devrait être là par défaut, donc si vous ne l'avez pas changé, il devrait y être présent (et c'est probablement la raison pour laquelle votre application fonctionne!). Maintenant, pour certaines raisons, PyDev a souvent des problèmes avec des informations "rafraîchissantes" sur les bibliothèques disponibles après l'ajout d'une nouvelle bibliothèque à site-packages (et utilise cette information par exemple pour vérifier si elle doit mettre un marqueur d'erreur sur l'instruction import).

Il existe plusieurs façons de forcer l'actualisation de ces informations. Le plus fiable pour moi consiste simplement à supprimer l'interpréteur Python au moyen de: Window -> PyDev -> Interpreter - Python -> Remove, puis de l'ajouter dans la même vue. Ensuite, le répertoire site-packages est réexaminé et PyDev voit l'ensemble de bibliothèques mis à jour, de sorte que les marqueurs d'erreur doivent disparaître. Note latérale: Pour être honnête, jusqu'à présent je n'ai jamais besoin d'utiliser cette vue External Libraries. Avoir des paquetages de site dans les paramètres d'interpréteur est suffisant pour 99% des cas car il y a des bibliothèques externes Python.