簡體   English   中英

cx_Freeze:導入模塊失敗

[英]cx_Freeze : Importing modules fails

我想用cx_Freeze編譯一個Python3項目,但不管我做什么,我永遠不能導入我自己的.py文件。

這是我的目錄結構:

projectname/
 setup.py
 app/
    code/
       __init__.py
       config.py
       run.py
       run - editeur.py
       ... 
    image/
       ...
    level/
       ...

我的setup.py

import sys, os
from cx_Freeze import setup, Executable

path = sys.path
includes = []
excludes = []
packages = ["app/code"]
includefiles = ["app/image", "app/level"]

optimize = 0
silent = True

options = {"path": path,
       "includes": includes,
       "excludes": excludes,
       "packages": packages,
       "include_files": includefiles,
       "optimize": optimize,
       "silent": silent
       }

base = Win32GUI

cible_1 = Executable(
    script="app/code/run.py",
    )

cible_2 = Executable(
    script="app/code/run - editeur.py",
    )

setup(
    name="project",
    version="1.0",
    description="blabla",
    options={"build_exe": options},
    executables=[cible_1, cible_2]
    )

cx_Freeze編譯進展順利,我獲得了2個可執行文件。 但是當我嘗試啟動一個時,每次我得到同樣的錯誤:

[...]
File "app/code/run.py", line 7, in <module>
import config
ImportError: No module named 'config'

因為我對插件沒有任何問題,所以我真的不得不錯過一些愚蠢的東西。 它也可能是路徑問題或其他我不知道的事情......

誰知道怎么幫我一點? 謝謝 !

編輯:我已設法根據您的目錄結構凍結一個簡化的示例,並修改了setup.py腳本:

path = sys.path + ['app/code']
packages = []

或者,您也可以嘗試以下結構(相應地修改導入路徑):

projectname/
   setup.py
   config.py
   run.py
   run - editeur.py
   ... 
   image/
      ...
   level/
      ...

暫無
暫無

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

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