6

Pythonスクリプトをexeにコンパイルするのは比較的新しいです。私はcx_freezeを使用してスクリプトをコンパイルし、ビルドしたらexeを実行すると、このエラーが発生します。グーグルをたくさん持っていますが、よくわかりません。エラーは次のとおりです。

トレースバック モジュールをインポートできません。
例外: re という名前のモジュールはありません
元の例外: re という名前のモジュールはありません

これを修正する方法がよくわかりません。reという名前のモジュール間に衝突がある可能性があることを読みましたか? パイソンで?および cx_freeze モジュールに re という名前のモジュールはありますか?

私のセットアップファイルは次のようになります:

from cx_Freeze import setup, Executable

includes = []
includefiles = ['remindersText.pkl']
eggsacutibull = Executable(
    script = "podlancer.py",
    initScript = None,
    base = 'Win32GUI',
    targetName = "podlancer.exe",
    compress = True,
    copyDependentFiles = True,
    appendScriptToExe = False,
    appendScriptToLibrary = False,
    icon = None
    )

setup(
        name = "Podlancer",
        version = "0.1",
        author = 'jono',
        description = "Podlancer UI script",
        options = {"build_exe": {"includes":includes, "include_files": includefiles}},
        executables = [eggsacutibull]
        )
4

3 に答える 3

6

変更してみる

includes = []

includes = ["re"]

それは私のために働いた

于 2011-05-26T19:12:20.240 に答える
2

cx_freeze は、ランタイムの作業ディレクトリが実行可能ファイルがあるディレクトリでない場合に barf を実行します。

初めての輸入ですか?それらを別の順序で行うとどうなりますか?

于 2011-04-18T00:26:15.380 に答える
0

この同じ問題を解決することreincludes、私にとってはうまくいきませんでした。cx_Freeze.freezer.ConfigError.py ファイルの再構築時に が生成されました。

import sys
from cx_Freeze import setup, Executable

build_exe_options = {'include_files': ['re']}

setup(  name = "Foreground Window Montior",
        version = "0.1",
        description = "Query the foreground window.",
        options = {'build_exe': build_exe_options},
        executables = [Executable("actWin_Query.py")])

reではpackagesなく入れても、include_filesこのコンパイルエラーは発生しませんでした。

import sys
from cx_Freeze import setup, Executable

build_exe_options = {"packages": ["re"]}

setup(  name = "Foreground Window Montior",
        version = "0.1",
        description = "Query the foreground window.",
        options = {'build_exe': build_exe_options},
        executables = [Executable("actWin_Query.py")])
于 2014-07-03T11:51:37.123 に答える