PySyde2 / fbs 冻结 / 无法执行脚本 main
PySyde2 / fbs freeze / fail to execute script main
希望你们一切顺利!我正在使用 PyCharm 和 Virtual Env 开始一个项目。有人可以帮忙吗?
我有这些文件:
main.py 代码:
from fbs_runtime.application_context.PySide2 import ApplicationContext
import sys
from package.main_window import MainWindow
if __name__ == '__main__':
appctxt = ApplicationContext() # 1. Instantiate ApplicationContext
window = MainWindow()
window.resize(250, 150)
window.show()
exit_code = appctxt.app.exec_() # 2. Invoke appctxt.app.exec_()
sys.exit(exit_code)
我有另一个文件 main_window.py,其中包含以下代码:
从 PySide2 导入 QtWidgets
class MainWindow(QtWidgets.QWidget):
def __init__(self):
super().__init__()
self.setup_ui()
def setup_ui(self):
self.create_widgets()
self.modify_widgets()
self.create_layouts()
self.add_widgets_to_layouts()
self.setup_connections()
def create_widgets(self):
self.btn_click = QtWidgets.QPushButton("Click")
def modify_widgets(self):
pass
def create_layouts(self):
self.main_layout = QtWidgets.QVBoxLayout(self)
def add_widgets_to_layouts(self):
self.main_layout.addWidget(self.btn_click)
def setup_connections(self):
self.btn_click.clicked.connect(self.bouton_clicked)
def bouton_clicked(self):
message_box = QtWidgets.QMessageBox()
message_box.setWindowTitle("Bravo")
message_box.setText("Première application réussi")
message_box.exec_()
最后我创建了一个 freeze.sh 文件:
来源 ~/PycharmProjects/venv/Scripts/activate
cd ~/PycharmProjects/echaufement/
fbs clean
fbs freeze
我 cd 我的 src/main 文件夹并使用:sh freeze.sh
它创建一个包含我的 App.exe 的目标文件夹
但是当打开我的 App.exe 我有以下错误:无法执行脚本主要
最后在调试后 -fbs freeze --debug- 我有这个 - 请看图片
谢谢您的帮助。
./Scripts/fbs-script.py
第 11 行是否存在路径问题?
另外,作为一般规则,fbs
在 python 3.6 之后表现不佳。 python 3.6.x venv?
时再次尝试冻结应用程序
我在此处概述了如何使用 python 3.6.x virtualenv
构建 fbs
应用程序:
希望你们一切顺利!我正在使用 PyCharm 和 Virtual Env 开始一个项目。有人可以帮忙吗? 我有这些文件:
main.py 代码:
from fbs_runtime.application_context.PySide2 import ApplicationContext
import sys
from package.main_window import MainWindow
if __name__ == '__main__':
appctxt = ApplicationContext() # 1. Instantiate ApplicationContext
window = MainWindow()
window.resize(250, 150)
window.show()
exit_code = appctxt.app.exec_() # 2. Invoke appctxt.app.exec_()
sys.exit(exit_code)
我有另一个文件 main_window.py,其中包含以下代码: 从 PySide2 导入 QtWidgets
class MainWindow(QtWidgets.QWidget):
def __init__(self):
super().__init__()
self.setup_ui()
def setup_ui(self):
self.create_widgets()
self.modify_widgets()
self.create_layouts()
self.add_widgets_to_layouts()
self.setup_connections()
def create_widgets(self):
self.btn_click = QtWidgets.QPushButton("Click")
def modify_widgets(self):
pass
def create_layouts(self):
self.main_layout = QtWidgets.QVBoxLayout(self)
def add_widgets_to_layouts(self):
self.main_layout.addWidget(self.btn_click)
def setup_connections(self):
self.btn_click.clicked.connect(self.bouton_clicked)
def bouton_clicked(self):
message_box = QtWidgets.QMessageBox()
message_box.setWindowTitle("Bravo")
message_box.setText("Première application réussi")
message_box.exec_()
最后我创建了一个 freeze.sh 文件: 来源 ~/PycharmProjects/venv/Scripts/activate cd ~/PycharmProjects/echaufement/
fbs clean
fbs freeze
我 cd 我的 src/main 文件夹并使用:sh freeze.sh
它创建一个包含我的 App.exe 的目标文件夹
但是当打开我的 App.exe 我有以下错误:无法执行脚本主要
最后在调试后 -fbs freeze --debug- 我有这个 - 请看图片
谢谢您的帮助。
./Scripts/fbs-script.py
第 11 行是否存在路径问题?
另外,作为一般规则,fbs
在 python 3.6 之后表现不佳。 python 3.6.x venv?
我在此处概述了如何使用 python 3.6.x virtualenv
构建 fbs
应用程序: