当我运行下面的hellow程序(使用GAE启动器)时,它可以工作:
import webapp2
class MainPage(webapp2.RequestHandler):
def get(self):
self.response.headers['Content-Type'] = 'text/plain'
self.response.out.write('Hello, webapp World!')
app = webapp2.WSGIApplication([('/', MainPage)],
debug=True)但是,如果我转到终端,我不能导入webapp2:
C:\Users\Robert>python
Python 2.7.2 (default, Jun 12 2011, 15:08:59) [MSC v.1500 32 bit (Intel)] on win
32
Type "help", "copyright", "credits" or "license" for more information.
>>> import webapp2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named webapp2
>>>另外,我的集成开发环境没有为webapp2对象提供自动完成功能。
由于GAE启动器使用的python版本与我在终端中使用的版本相同,因此我对导入在GAE启动器中的工作方式感到困惑。
发布于 2012-03-02 01:05:25
这不是个bug。Appengine SDK从1.6版开始包含webapp2。
默认情况下,不能从终端导入webapp2,因为默认情况下不会将google_appengine添加到路径中。
将以下目录添加到Python的路径中:C:\Program Files\Google\google_appengine\和C:\Program Files\Google\google_appengine\lib\,您将拥有与SDK提供的相同环境。
发布于 2012-03-01 09:23:19
我不使用GAE启动器,但是我非常确定如果你用启动器启动你的应用,它会把一些包放到你的pythonpath路径中,这就是为什么你可以把它导入到你的应用中。
我敢打赌,你不能从gooogle.appengine.ext或其他gae库中从python提示符导入一些东西,但你可以在你的应用程序中导入。
发布于 2012-03-01 09:31:34
您使用的是python27运行时吗?如果是这样的话,无论是否安装了webapp2,开发服务器和生产运行时都可以使用它。如果您能够在旧的Python2.5运行时下导入webapp2,我会认为这是一个错误。
https://stackoverflow.com/questions/9509276
复制相似问题