未找到麻线(-bash:麻线:找不到命令)
Posted
技术标签:
【中文标题】未找到麻线(-bash:麻线:找不到命令)【英文标题】:twine not found (-bash: twine: command not found) 【发布时间】:2018-12-29 07:43:54 【问题描述】:我正在尝试使用 twine 在 pypi 上发布我的第一个 python 包(当然会先添加 test-pypi)。
我遵循https://packaging.python.org/tutorials/packaging-projects/ 上的官方指南。
但由于某种原因,未找到 twine 或未正确安装。
我使用以下方式安装麻线:
pip install twine
"pip list" 表示 pip 上安装了 twine。
在我升级了 twine 和所有东西之后,当我尝试运行时:
twine upload --repository-url https://test.pypi.org/legacy/ dist/*
然后它说根本找不到麻绳:
-bash: twine: command not found .
我的系统是 mac (high sierra),我正在使用 conda 的 python2.7。 pip 也配置为 conda python:
>>pip -V
>>pip 10.0.1 from /anaconda2/lib/python2.7/site-packages/pip (python 2.7)
感谢您的帮助。
【问题讨论】:
python -m twine
而不是 twine
是否有效? (这不是一个完整的答案,它是一个调试信息的问题——但如果它有效,它也是一个你可以使用的解决方法,直到你解决问题为止。)
因为pip安装了它,并不代表它存在于PATH中
使用pip show -f twine
列出属于包的所有文件。这将向您显示可执行文件的相对路径(例如../../bin/twine
)。将它与Location:
行中打印的路径结合起来,以获得 bin 目录的完整路径。然后将目录添加到PATH
:PATH=$PATH:/path/to/bin twine -V
应该可以正常运行。然后,通过添加行PATH=$PATH:/path/to/bin
和export PATH
来保持.bash_profile
中的PATH
更改。重新启动终端,一切顺利。
@abarnert 您的解决方法现在对我有用。谢谢!
@hoefling 我按照您的建议添加了路径,并确认该路径已添加到该位置,因为我刚刚通过“echo $PATH”检查。仍然麻线给我没有找到命令...... :(
【参考方案1】:
基于@hoefling cmets 运行
pip show twine
这将列出属于twine
包的所有文件。它会输出如下内容:
Name: twine Version: 1.12.1 Summary: Collection of utilities for publishing packages on PyPI Home-page: https://twine.readthedocs.io/ Author: Donald Stufft and individual contributors Author-email: donald@stufft.io License: Apache License, Version 2.0 Location: /Users/hakuna.matata/.local/lib/python3.6/site-packages Requires: pkginfo, readme-renderer, tqdm, requests, requests-toolbelt, setuptools Required-by:
注意Files
下的第一个文件,即../../../bin/twine
和Location: /Users/hakuna.matata/.local/lib/python3.6/site-packages
。当然,您的用户名将替换 'hakuna.matata'
这将导致在/Users/hakuna.matata/.local/bin
处打包可执行文件的路径,您可以将其添加到您的.bash_profile
为
export PATH="/Users/hakuna.matata/.local/bin:$PATH"
然后,要么重启终端,要么
source ~/.bash_profile
【讨论】:
【参考方案2】:使用python3 -m twine upload --repository-url https://test.pypi.org/legacy/ dist/*
【讨论】:
以上是关于未找到麻线(-bash:麻线:找不到命令)的主要内容,如果未能解决你的问题,请参考以下文章