4

myUtilsという名前のパッケージを実装しました。これは、フォルダー'myUtils'、ファイル' init .py'、および名前が!='myUtils'の多数の*.pyファイルで構成されています。このパッケージはmyOtherProject.pyに含まれており、Eclipseから実行すると見つかり/使用できます。

ただし、myOtherProject.pyでpy2exeを実行すると、結果のexeはこのモジュールを見つけることができません(エラーメッセージ「ImportError:no module namedmyUtils」)。私のsetup.exeのトリミングされたバージョン:

from distutils.core import setup
import py2exe, sys
sys.path.append(pathTo_myUtils)
import myUtils # this line works fine even if I comment out sys.path.append(...)
data_files_ = (('.', ["C:\\Python27\\DLLs\\MSVCP90.dll", 
                      "C:\\Python27\\lib\\site-packages\\Pythonwin\\mfc90.dll"]))
setup(windows=['myOtherProject.py'], options={'py2exe': {'excludes': ['tcl'], 'includes': ['myUtils'], 'dll_excludes': ['tk85.dll',  'tcl85.dll'] }}, data_files=data_files_)

どうすればこれを修正できますか?WinXPでPython2.7を使用しています。

4

2 に答える 2

2

ステートメントsys.path.append()の前に行を入れてください。importさらに良いことに、PYTHONPATHを変更します(Windowsでこれを行う方法はわかりませんが、Googleがその方法を教えてくれると確信しています)

于 2012-11-05T18:01:12.527 に答える
2

PYTHONPATHを適切に定義しませんでした。セミコロンの後にスペースがありました。それ以外の

c:\aa\; c:\bb\; c:\cc\

それはする必要がありました

c:\aa;c:\bb;c:\cc

init .pyを使用して定義されたパッケージ(パッケージMyPackageは、 Init .pyおよびMyPackage.pyを含まないその他のファイルを含むフォルダーMyPackageに対応します)の場合、PYTHONPATHに追加する必要のあるパスはそうではありませんでした。

<path_to_MyPackage>\MyPackage 

でもただ

<path_to_MyPackage>

..。

于 2012-11-15T17:14:02.597 に答える