我使用的Eclipse + PyDev的+ 3.4蟒蛇+ pyQt5.5
我有一個奇怪的問題,沒有回溯或任何其他消息時程序崩潰。
當我嘗試編寫錯誤生成代碼時,程序啓動時執行(如初始化方法的MainWindow)我有我的標準回溯,一切都很好。
但是,當我把我的壞代碼在某種回調(如方法連接到QPushButoon點擊信號),並按下該按鈕,程序崩潰,但我的Eclipse控制檯窗口保持空。沒有追蹤,沒有錯誤信息,只是沒有。
你有什麼建議嗎?在Eclipse中的PyDev沒有回溯
編輯。示例代碼:
對於這種類型的代碼,應用程序會在啓動時崩潰,我將獲得回溯了,一切都會好起來:
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
error_producing_string
而在這個示例應用程序會崩潰上按一下按鈕,但我不會得到任何錯誤或回溯:
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.btn = QPushButton('text', self)
self.button.clicked.connect(self.handleButton)
def handleButton(self):
error_producing_string
試圖打開故障處理程序(-X faluthandler),仍然沒有錯誤信息,但控制檯標題現在是「 faulthandler」而不是「 main.py」。並在調試透視和調試啓動我有交互式控制檯,但仍然沒有堆棧跟蹤或錯誤消息。 –
將嘗試檢查我的qt代碼的不良做法或安裝調試版本 –
而在調試中,我注意到,當它在__init__中崩潰時,它通過堆棧跟蹤返回,並將所有收集的信息發送到stderr,但在我的按鈕連接它只是直接跳轉到** sys.exit(app.exec _())** –