我正在尝试在Windows上使用 Fabric 0.1.1 部署工具(http://docs.fabfile.org/),我们遇到了 readline 的问题模块。我经历过各种各样的线程但似乎无法解决问题。这很重要,因为我们无法从基于Windows的计算机部署应用程序。
C:\Documents and Settings\dev\Desktop\deploy>fab
Traceback (most recent call last):
File "C:\python\Scripts\fab-script.py", line 8, in <module>
load_entry_point('fabric==0.1.1', 'console_scripts', 'fab')()
File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\pkg_resources.py"
, line 277, in load_entry_point
File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\pkg_resources.py"
, line 2180, in load_entry_point
File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\pkg_resources.py"
, line 1913, in load
File "build\bdist.win32\egg\fabric.py", line 25, in <module>
**ImportError: No module named readline**
安装模块导致:
**easy_install readline**
Searching for readline
Reading http://pypi.python.org/simple/readline/
Reading http://www.python.org/
Best match: readline 2.6.4
Downloading http://pypi.python.org/packages/source/r/readline/readline-2.6.4.tar
.gz#md5=7568e8b78f383443ba57c9afec6f4285
Processing readline-2.6.4.tar.gz
Running readline-2.6.4\setup.py -q bdist_egg --dist-dir c:\docume~1\ji81b9~1.che
\locals~1\temp\easy_install-pzkz1a\readline-2.6.4\egg-dist-tmp-szs2ps
Traceback (most recent call last):
File "C:\python\Scripts\easy_install-script.py", line 8, in <module>
load_entry_point('setuptools==0.6c9', 'console_scripts', 'easy_install')()
File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\comman
d\easy_install.py", line 1671, in main
File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\comman
d\easy_install.py", line 1659, in with_ei_usage
File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\comman
d\easy_install.py", line 1675, in <lambda>
File "c:\python\lib\distutils\core.py", line 152, in setup
dist.run_commands()
File "c:\python\lib\distutils\dist.py", line 975, in run_commands
self.run_command(cmd)
File "c:\python\lib\distutils\dist.py", line 995, in run_command
cmd_obj.run()
File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\comman
d\easy_install.py", line 211, in run
File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\comman
d\easy_install.py", line 446, in easy_install
File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\comman
d\easy_install.py", line 476, in install_item
File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\comman
d\easy_install.py", line 655, in install_eggs
File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\comman
d\easy_install.py", line 930, in build_and_install
File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\comman
d\easy_install.py", line 919, in run_setup
File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\sandbo
x.py", line 27, in run_setup
File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\sandbo
x.py", line 63, in run
File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\sandbo
x.py", line 29, in <lambda>
File "setup.py", line 93, in <module>
AttributeError: 'module' object has no attribute 'symlink'
有人解决了这个问题,还是有人建议解决方法?
答案 0 :(得分:4)
您尝试使用readline
安装的easy_install
模块适用于OS X,而不是Windows。有与Windows兼容的readline替换版本,但您可能应首先尝试将fabric
本身更新为更新版本(0.9现在已经存在)。
Grepping 0.9版本的源代码并未找到readline
的任何依赖项。
答案 1 :(得分:4)
按照以下步骤完全适合我:
1)使用来自MSI installer的x86 here安装。
2)安装在默认的C:\ Python27目录中。
3)创建一个新目录:C:\ Python27 \ Scripts
4)将C:\ Python27和C:\ Python27 \ Scripts添加到系统路径:
5)从distribute_setup.py下载here到C:\ Python27 \ Scripts
6)打开命令行,导航到C:\ Python27 \ Scripts,运行:'python distribute_setup.py'
7)现在运行'easy_install pip'
8)现在运行'pip install fabric'
9)你应该收到错误,说PyCrypto无法安装。您可以从Windows binary下载预制here。运行此命令以安装PyCrypto。
10)再次运行'pip install fabric',它应该说一切都已安装。
11)在另一个目录中(假设c:\ dev \ hello)创建一个fabfile.py并添加以下代码:
def hello(name="world"):
print("Hello %s!" % name)
12)cd到这个目录并运行'fab hello:working'。你应该看到输出说
Hello working!
Done.
答案 2 :(得分:2)
试试这个readline。它是一个适用于Windows的模块,允许IPython中的其他功能不是本机的,可能与您尝试的功能一起使用。
答案 3 :(得分:2)
0.1.1是旧版本,我相信。使用Fabric(w / ActivePython)在Windows上安装PyPM没有问题:
C:\> pypm install fabric
Ready to perform these actions:
The following packages will be installed:
fabric-0.9.0 pycrypto-2.0.1
Get: [pypm.activestate.com] fabric 0.9.0-1
Get: [pypm.activestate.com] pycrypto 2.0.1-1
Installing fabric-0.9.0
Fixing script C:\Users\sridharr\AppData\Roaming\Python\Scripts\fab-script.py
Installing pycrypto-2.0.1
答案 4 :(得分:1)
setuptools-0.6c11.win32-py2.6.exe
easy_install -U fabric
安装最后一个结构版本。答案 5 :(得分:0)
Readgline可以与Cygwin一起使用。