python – 如何克服 – 在windows上使用文件名或扩展名失败的pip
如何修复
Windows上的pip安装失败,错误如下.尝试安装ansible时出现此错误.
我怀疑选择的pip包安装问题.但同样适用于基于Linux的系统. pip安装的操作系统是否会有任何差异 Exception: Traceback (most recent call last): File "c:python27libsite-packagespipbasecommand.py",line 215,in main status = self.run(options,args) File "c:python27libsite-packagespipcommandsinstall.py",line 324,in run requirement_set.prepare_files(finder) File "c:python27libsite-packagespipreqreq_set.py",line 380,in prepare_files ignore_dependencies=self.ignore_dependencies)) File "c:python27libsite-packagespipreqreq_set.py",line 620,in _prepare_file session=self.session,hashes=hashes) File "c:python27libsite-packagespipdownload.py",line 821,in unpack_url hashes=hashes File "c:python27libsite-packagespipdownload.py",line 663,in unpack_http_url unpack_file(from_path,location,content_type,link) File "c:python27libsite-packagespiputils__init__.py",line 605,in unpack_file untar_file(filename,location) File "c:python27libsite-packagespiputils__init__.py",line 553,in untar_file ensure_dir(path) File "c:python27libsite-packagespiputils__init__.py",line 83,in ensure_dir os.makedirs(path) File "C:Python27Libos.py",line 157,in makedirs mkdir(name,mode) WindowsError: [Error 206] The filename or extension is too long: 'c:usersuser123appdatalocaltemppip-build-isnb2tansibletest/integration/targets/copy/files/subdir/subdir1/circles/subdir1/circles/subdir1/circles/subdir1/circles/subdir1/circles/subdir1/circles/subdir1/circles/subdir1/circles/subdir1/circles/subdir1/' 解决方法
好吧,这似乎是一个已知的错误:
https://github.com/ansible/ansible/issues/31419
circles -> ../ subdir3 -> ../subdir2/subdir3 Windows 10无法创建此目录树,因为路径太长.实际上解决的路径是: test/integration/targets/copy/files/subdir/subdir1/circles/subdir1/circles/subdir1/circles/subdir1/circles/subdir1/circles/subdir1/circles/subdir1/circles/subdir1/circles/subdir2/subdir3/ 错误报告以:
解决方法 一个可能的解决方法是在pypi上下载轮,它不依赖于Linux或其他什么,可能是纯python: https://pypi.python.org/pypi/ansible/2.5.0a (pip install ansible命令下载“source”.tgz archive,执行测试,…并且路径问题在测试中,所以让我们使用一个现成的预构建的bundle) 下载后,使用pip install path / to / the / wheel / file.whl 在我的Windows 10计算机上成功测试并安装: C:Usersjotd>c:Python27Scriptspip install C:UsersjotdDownloadsansible-2.5.0a1-py2-none-any.whl Processing c:usersjotddownloadsansible-2.5.0a1-py2-none-any.whl Requirement already satisfied: PyYAML in c:python27libsite-packages (from ansible==2.5.0a1) Collecting cryptography (from ansible==2.5.0a1) <a lot of package collecting...> Installing collected packages: idna,pycparser,cffi,asn1crypto,ipaddress,cryptography,pynacl,bcrypt,pyasn1,paramiko,ansible Running setup.py install for pycparser ... done Running setup.py install for ipaddress ... done Successfully installed ansible-2.5.0a1 asn1crypto-0.24.0 bcrypt-3.1.4 cffi-1.11.4 cryptography-2.1.4 idna-2.6 ipaddress-1.0.19 paramiko-2.4.0 pyasn1-0.4.2 pycparser-2.18 pynacl-1.2.1 好的,已安装,但让我们尝试导入它: C:Usersjotd>c:python27python Python 2.7.12 (v2.7.12:d33e0cf91556,Jun 27 2016,15:24:40) [MSC v.1500 64 bit (AMD64)] on win32 Type "help","copyright","credits" or "license" for more information. >>> import ansible >>> 作品!好极了! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |