从pycharm运行dev_appserver.py时的ImportError

问题描述 投票:3回答:2

我在Windows上使用最新版本的pycharm 2018.2。我也将Google Cloud Sdk更新到了最新版本。

当我在Pycharm:enter image description here中使用内置的App Engine运行配置时,我在运行窗口中出现导入错误ImportError: cannot import name _common

"C:\Program Files\JetBrains\PyCharm 2018.1.1\bin\runnerw.exe" C:\Code\my- 
 project\env\Scripts\python.exe "C:/Program Files (x86)/Google/Cloud 
 SDK/google-cloud-sdk/bin/dev_appserver.py" --port 8484 app.yaml tasks.yaml 
 longtasks.yaml --log_level=debug Traceback (most recent call last):
 File "C:/Program Files (x86)/Google/Cloud SDK/google-cloud- 
 sdk/bin/dev_appserver.py", line 12, in <module>
   from bootstrapping import bootstrapping
  File "C:\Program Files (x86)\Google\Cloud SDK\google-cloud-   
   sdk\bin\bootstrapping\bootstrapping.py", line 24, in <module>
  from . import setup  # pylint:disable=g-import-not-at-top
  File "C:\Program Files (x86)\Google\Cloud SDK\google-cloud- 
  sdk\bin\bootstrapping\setup.py", line 55, in <module>
  from googlecloudsdk.core import properties
  File "C:\Program Files (x86)\Google\Cloud SDK\google-cloud- 
  sdk\lib\googlecloudsdk\core\properties.py", line 36, in <module>
  from googlecloudsdk.core.util import times
  File "C:\Program Files (x86)\Google\Cloud SDK\google-cloud- 
  sdk\lib\googlecloudsdk\core\util\times.py", line 55, in <module>
  from dateutil.tz import _common as tz_common
  ImportError: cannot import name _common

  Process finished with exit code 1

dateutil.tz包位于C:\Python27\Lib\site-packages,我正在运行的项目中有一个dateutil包。我不知道这是否与这个问题有关。我已经尝试更改默认的python解释器,它也没有用。我已经尝试以管理员身份运行Pycharm,但也没有效果。调试和非调试运行命令都会导致此问题。

如果我运行命令直接在终端启动dev_appserver.py(有或没有虚拟环境python),它可以正常工作,例如"C:/Program Files (x86)/Google/Cloud SDK/google-cloud-sdk/bin/dev_appserver.py" --port 8484 app.yaml tasks.yaml longtasks.yaml

另外,如果我运行pycharm正在运行的命令(跑步部分除外),那么它也能正常工作(从命令行):

C:\Code\project>C:\Code\project\env\Scripts\python.exe "C:/Program Files 
(x86)/Google/Cloud SDK/google-cloud-sdk/bin/dev_appserver.py" --port 8484 
 app.yaml tasks.yaml longtasks.yaml --log_level=debug
 INFO     2018-07-29 08:11:15,566 devappserver2.py:178] Skipping SDK update 
 check.
 INFO     2018-07-29 08:11:17,726 api_server.py:274] Starting API server at: 
 http://localhost:59886
 INFO     2018-07-29 08:11:18,259 dispatcher.py:270] Starting module 
   "default" running at: http://localhost:8484
 INFO     2018-07-29 08:11:18,519 dispatcher.py:270] Starting module "tasks" 
 running at: http://localhost:8485
 INFO     2018-07-29 08:11:18,815 dispatcher.py:270] Starting module 
"longtasks" running at: http://localhost:8486
INFO     2018-07-29 08:11:18,822 admin_server.py:152] Starting admin server 
at: http://localhost:8000

值得注意的是,我可以在Pycharm中运行其他GAE项目并且它们确实运行(这使我认为它与我的配置此项目有关)。

python google-app-engine pycharm dev-appserver
2个回答
3
投票

这是PyCharm Pro的2018.2.4中的错误。我有同样的问题,并回滚到2018.1.5,它工作正常。

问题是2018.2.4正在加载cloud-sdk appengine灵活环境类而不是标准环境类。


0
投票

我安装了版本211.0.0 - https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-211.0.0-darwin-x86_64.tar.gz

其次是:

gcloud components install app-engine-python
© www.soinside.com 2019 - 2024. All rights reserved.