我创建了一个IronPython的脚本,从Python库进口,如os
,sys
等以及.NET库。部署IronPython的脚本或静态建立一个应用程序
它运行从我的Visual Studio的IronPython的解决方案完全没有问题,但我需要部署的,这样其他没有IronPython的或安装了Python可以运行它谁的人。
我该怎么做?
我创建了一个IronPython的脚本,从Python库进口,如os
,sys
等以及.NET库。部署IronPython的脚本或静态建立一个应用程序
它运行从我的Visual Studio的IronPython的解决方案完全没有问题,但我需要部署的,这样其他没有IronPython的或安装了Python可以运行它谁的人。
我该怎么做?
要求:
ipy.exe
在C:\Program Files (x86)\IronPython 2.7.1\
pyc.py
在C:\Program Files (x86)\IronPython 2.7.1\Tools\Scripts\
MyProgram.py
将是你的计划。
MyProgram.py
是)中,创建一个名为“deploy”的文件夹。cd deploy
。"C:\Program Files (x86)\IronPython 2.7.1\ipy.exe" "C:\Program Files (x86)\IronPython 2.7.1\Tools\Scripts\pyc.py" /main:..\MyProgram.py /target:exe
这将生成一个DLL,并在deploy
文件夹MyProgram一个exe。
如果您尝试运行MyProgram.exe
并且您正在导入os
等库,则可能会收到No module named ...
。
,因为我使用的os
,我得到这个错误:
如果你运行“MyProgram.exe”和你使用标准库,你可能会得到No module named...
错误。
在我的情况,我有:
Unhandled Exception: IronPython.Runtime.Exceptions.ImportException: No module na med os
...
要解决此问题,从C:\Program Files (x86)\IronPython 2.7.1\
复制Lib
文件夹,您刚才创建的文件夹deploy
。然后,您导入的是引发错误的库之前,修改MyProgram.py
这样的:
import sys
sys.path.append("Lib")
# Followed by library imports that were causing you trouble:
import os
最后一步,从C:\Program Files (x86)\IronPython 2.7.1\
以下文件复制到deploy
文件夹以及:
- IronPython.dll
- IronPython.Modules.dll
- Microsoft.Dynamic.dll
- Microsoft.Scripting.dll
现在你可以拉上你的deploy
文件夹,并将其运送!