我使用的是最新版本的pycharm 2018.2,在Windows上。 我也更新了googlecloudsdk的最新版本。在
当我在Pycharm中使用内置的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
日期util.tz包位于C:\Python27\Lib\site-packages
中,我在运行的项目中有一个dateutil包。我不知道这是否和这个问题有关。我尝试过更改默认的python解释器,但它也不起作用。我试过以管理员身份运行Pycharm,但没有效果。调试和非调试运行命令都会导致此问题。在
如果我运行命令来启动dev_应用服务器.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正在运行的命令(runnerw部分除外),那么它也可以正常工作(从命令行):
^{pr2}$还有一点值得注意的是,我可以在Pycharm中运行其他GAE项目,并且它们执行运行(这使我认为这与我对这个项目的配置有关)。在
我安装了版本
211.0.0
- https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-211.0.0-darwin-x86_64.tar.gz其次是:
这是PyCharm Pro 2018.2.4中的一个bug。我也遇到了同样的问题,回到了2018.1.5,效果很好。在
问题是2018.2.4加载的是cloud sdk appengine灵活环境类,而不是标准环境类。在
克服这一问题的一个简单方法是在文本编辑器中打开
<path-to...>/googlecloudsdk/core/util/times.py
,然后注释掉以及
^{pr2}$假设你不需要这个“monkeypatch”,这就解决了这个问题。在
相关问题 更多 >
编程相关推荐