Perché ricevo un ImportError quando eseguo uno dei tutorial CherryPy
Domanda
Ho installato CherryPy 3.1.0 ,. Ecco cosa succede quando provo a eseguire il tutorial 9:
$ cd /Library/Python/2.5/site-packages/cherrypy/tutorial/
$ python tut09_files.py
Traceback (most recent call last):
File "tut09_files.py", line 48, in <module>
from cherrypy.lib import static
ImportError: cannot import name static
La riga precedente nel file:
import cherrypy
passa senza errori, quindi sembra che possa trovare cherrypy sul percorso. Cosa mi sto perdendo?
Soluzione
Questo funziona per me e sto anche usando CherryPy 3.1.0, quindi non sono sicuro di cosa dirti.
Cerca nella directory /Library/Python/2.5/site-packages/cherrypy/lib un file chiamato static.py; se questo file esiste, non sono sicuro di cosa dirti. In caso contrario, è successo qualcosa al tuo CherryPy e ti consiglio di reinstallare. In tal caso, dovresti controllare il valore di sys.path
per assicurarti che rilevi la versione corretta di CherryPy.
Puoi anche provare a eseguire l'interprete Python dalla riga di comando e quindi fare un da cherrypy.lib import static
per vedere se ottieni lo stesso risultato.
Altri suggerimenti
Avevo un vecchio file CherryPy-2.3.0-py2.5.egg nei miei pacchetti del sito. Dopo aver rimosso il vecchio .egg ho potuto eseguire il tutorial.