首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PyCharm Django项目无法在调试时运行

PyCharm Django项目无法在调试时运行
EN

Stack Overflow用户
提问于 2016-12-08 07:50:11
回答 2查看 1.5K关注 0票数 5

有一段时间,我在我的Windows 10机器上出现了这个奇怪的问题。当试图在PyCharm上启动调试(有时甚至没有调试)的Django服务器时,我会得到以下错误:

代码语言:javascript
复制
...
pydev debugger: process 10532 is connecting
Connected to pydev debugger (build 163.8233.8)
Process finished with exit code -1073741819 (0xC0000005)

这就是不需要调试的情况:

代码语言:javascript
复制
"C:\Program Files (x86)\PyCharm\bin\runnerw.exe" D:\project\env\Scripts\python.exe D:/project/manage.py runserver 80

Process finished with exit code -1073741819 (0xC0000005)

最奇怪的是,如果我重新运行,一些时候(在大约4-6次重播中成功一次)它将成功启动。没有PyCharm,我也无法重现这个问题。

规范:Windows10Pro,Pycharm (这发生在5.x到2016.3版本) x86和x64版本,Python3.5x,Django 1.8-1.10.x。

有什么想法,为什么会发生这种情况,或如何获得更多更详细的信息崩溃?

编辑--这是事件查看器报告的关于错误的内容:

代码语言:javascript
复制
Faulting application name: python.exe, version: 3.5.1150.1013, time stamp: 0x566391f0
Faulting module name: ucrtbase.dll, version: 10.0.14393.0, time stamp: 0x57898db2
Exception code: 0xc0000005
Fault offset: 0x000b6d95
Faulting process ID: 0x1b30
Faulting application start time: 0x01d251286ca8ada3
Faulting application path: D:\project\env\Scripts\python.exe
Faulting module path: C:\WINDOWS\System32\ucrtbase.dll
Report ID: b23376d6-cf66-4d83-8781-cd22311e0f9e
Faulting package full name: 
Faulting package-relative application ID: 

编辑2我缩小了问题的范围。此错误似乎起源于此语句之后的restart_with_reloader in autoreload.py

代码语言:javascript
复制
def restart_with_reloader():
    while True:
        args = [sys.executable] + ['-W%s' % o for o in sys.warnoptions] + sys.argv
        if sys.platform == "win32":
            args = ['"%s"' % arg for arg in args]
        new_environ = os.environ.copy()
        new_environ["RUN_MAIN"] = 'true'

        # this line crashes the whole script
        # I guess the problem arises in native code
        exit_code = os.spawnve(os.P_WAIT, sys.executable, args, new_environ)
        # debugger disconnects here

        if exit_code != 3:
            return exit_code

也许Python社区的人也看到过类似的东西?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-01-28 08:57:57

tl;dr溶液

要在“Environment variables in Run/Debug Configurations”对话框中添加以下内容:

=C: c:\''

我已经向JetBrains YouTrack提交了一张罚单,这实际上是一个如何处理命令行环境变量的问题。您可以在这里找到解决问题的方法:https://youtrack.jetbrains.com/issue/PY-17069

摘自JetBrains dev评论:

伙计们,我刚在Windows和Microsoft:)中发现了一个bug,试图在run =C:= c:Yes, =C: is NAME and c: is value中向环境变量添加以下env变量。

票数 9
EN

Stack Overflow用户

发布于 2017-01-17 17:02:43

我对PyCharm和Django也有同样的问题。这是由在PyCharm下运行Django的自动重新加载特性引起的。正如在评论中所建议的那样,我以管理员的身份运行PyCharm,并解决了问题。您还可以在PyCharm Django服务器配置中打开“没有重新加载”。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41034361

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档