簡體   English   中英

配置 Pycharm 以運行 Pyinstaller

[英]Configuring Pycharm to run Pyinstaller

是的,我想在 PyCharm 中創建一個運行配置來運行 Pyinstaller 並獲取我的可執行文件。 根據Pyinstaller 文檔,您應該能夠在安裝后找到一個名為pyinstaller-folder/pyinstaller.py的 python 腳本,但它不存在。 然后我仔細查看,發現另一個名為pyinstaller-folder/__main__.py應該是相同的<--(我pyinstaller-folder/__main__.py猜測),所以我設置了我的運行配置如下:

在此處輸入圖片說明

運行后,給我這個錯誤:

/usr/local/Cellar/python3/3.4.3/bin/python3.4 /usr/local/lib/python3.4/sit

e-packages/PyInstaller/__main__.py --onefile --nowindow --osx-bundle-identifier=jg.optimizer -F --name=genoptimizer optimizer/manage.py
Traceback (most recent call last):
  File "/usr/local/lib/python3.4/site-packages/PyInstaller/__main__.py", line 26, in <module>
    from . import __version__
SystemError: Parent module '' not loaded, cannot perform relative import

Process finished with exit code 1

它似乎需要一個父模塊才能運行,但是,那會是什么樣子?

兩年多之后,或許還有更好的選擇。

在 PyCharm 菜單中轉到File -> Settings
在設置對話框中找到工具->外部工具並使用綠色 + 添加一個新的外部工具。

例如:

在此處輸入圖片說明

然后,IDE 將允許您在任何 python 腳本上運行它。 右鍵單擊該文件,上下文菜單將顯示External tools -> PyInstaller

PyInstaller 包是一個可運行的模塊,可以使用python -m PyInstaller運行。 要將其配置為 PyCharm 中的運行目標,請將“腳本”字段留空,在“解釋器選項”字段中寫入-m PyInstaller ,並將 PyInstaller 參數放入“腳本參數”字段。

例如:

pyinstaller pycharm 配置

PyCharm 會抱怨“腳本”字段為空,但無論如何它都會讓您運行配置。

自從接受的答案以來,運行命令發生了一些變化。 您現在可以選擇要啟動的模塊而不是編輯解釋器選項。

在撰寫此答案時,它的外觀如下:

在此處輸入圖片說明

筆記:

  • 該方案需要在項目的虛擬環境中安裝PyInstaller
  • 我正在使用 PyCharm pro 2020.1
  • 舊的解決方案應該仍然有效
  • 使用外部工具仍然是可能的。 您選擇哪種解決方案取決於個人喜好。

在pycharm中安裝pyinstaller,然后打開pycharm終端,寫python -m PyInstaller

因此,由於 Pycharm 有新的更新,我的情況有點不同,因為我從解釋器設置安裝了pyinstaller ,如下圖所示:

在此處輸入圖片說明

對於 Linux 用戶

您可以在Python 2.7Python 3.7+安裝它。 確保獲取pyinstaller存放路徑。 然后在Settings選項中,嘗試找到Tools -> External tools 並添加一個新的外部工具,如下圖所示: 在此處輸入圖片說明

對於 Windows 用戶

如果您使用的是 Pycharm 或任何虛擬環境。 不幸的是,一旦您指定了interpretervenv就會在venv路徑中創建其本地虛擬環境。 因此,您應該將外部工具(pyinstaller)設置為您的python 3.7 .exe 的真實路徑,如圖所示這里

對於我們這些在 Windows 上使用 Anaconda 試圖解決這個問題的人來說,我發現最簡單的方法是設置 Bash 配置(我相信您需要為此使用 BashSupport 插件),然后設置:

  • 腳本: pyinstaller (假設pyinstaller在您的路徑中,如果沒有,則為完整路徑)
  • 解釋器路徑: C:\\Windows\\system32\\cmd.exe (是的,一個bash配置就可以使用標准命令程序)
  • 解釋器選項: /C
  • 程序參數: script_name.py (以及任何其他 pyinstaller 參數)
  • 工作目錄: C:\\Path\\To\\Script

是的,我想在PyCharm中創建一個運行配置,以運行Pyinstaller並獲取我的可執行文件。 根據Pyinstaller文檔,安裝后,您應該能夠找到一個名為pyinstaller-folder/pyinstaller.py的python腳本,但是它不存在。 然后,我仔細查看並發現了另一個名為pyinstaller-folder/__main__.py ,該pyinstaller-folder/__main__.py應該與<-(我很瘋狂的猜測)相同,所以我這樣設置了運行的配置:

在此處輸入圖片說明

運行它后,給我這個錯誤:

/usr/local/Cellar/python3/3.4.3/bin/python3.4 /usr/local/lib/python3.4/sit

e-packages/PyInstaller/__main__.py --onefile --nowindow --osx-bundle-identifier=jg.optimizer -F --name=genoptimizer optimizer/manage.py
Traceback (most recent call last):
  File "/usr/local/lib/python3.4/site-packages/PyInstaller/__main__.py", line 26, in <module>
    from . import __version__
SystemError: Parent module '' not loaded, cannot perform relative import

Process finished with exit code 1

它似乎需要一個父模塊才能運行,但是看起來會如何呢?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM