pkg_resources라는 모듈이 없습니다.
Django 앱을 개발자 서버에 배포하고 실행할 때이 오류가 발생합니다 pip install -r requirements.txt
.
Traceback (most recent call last):
File "/var/www/mydir/virtualenvs/dev/bin/pip", line 5, in <module>
from pkg_resources import load_entry_point
ImportError: No module named pkg_resources
pkg_resources
로 배포 된 것으로 보입니다 setuptools
. 처음에는 이것이 virtualenv의 Python에 설치되지 않을 것이라고 생각했기 때문에 setuptools 2.6
다음 명령을 사용하여 virtualenv의 Python 사이트 패키지에 (Python과 동일한 버전)을 설치했습니다 .
sh setuptools-0.6c11-py2.6.egg --install-dir /var/www/mydir/virtualenvs/dev/lib/python2.6/site-packages
편집 : 이것은 virtualenv 내부에서만 발생합니다. virtualenv 외부에서 콘솔을 열면 pkg_resources
존재하지만 여전히 동일한 오류가 발생합니다.
왜 pkg_resources
길에 있지 않은지에 대한 아이디어 가 있습니까?
2018 년 7 월 업데이트
대부분의 사람들은 이제 pip install setuptools
(와 함께 sudo
)를 사용해야 합니다.
일부는 (재) 설치해야 할 수 있습니다 python-setuptools
자신의 패키지 관리자를 통해 (패키지 apt-get install
, yum install
등).
이 문제는 OS 및 개발 환경에 따라 크게 달라질 수 있습니다. 위의 방법으로 문제가 해결되지 않으면 아래의 레거시 / 기타 답변을 참조하십시오.
설명
이 오류 메시지는 누락되거나 손상된 Python setuptools
패키지로 인해 발생 합니다. Matt M.의 설명 및 setuptools 문제 # 581 에 따라 아래에 언급 된 부트 스트랩 스크립트는 더 이상 권장되는 설치 방법이 아닙니다.
부트 스트랩 스크립트 지침은 여전히 도움이 될 수 있도록 아래에 남아 있습니다.
레거시 답변
ImportError
pip를 사용하는 동안 오늘도 같은 문제가 발생했습니다 . 어떻게 든 setuptools
패키지가 Python 환경에서 삭제되었습니다.
문제를 해결하려면 다음에 대한 설정 스크립트를 실행하십시오 setuptools
.
wget https://bootstrap.pypa.io/ez_setup.py -O - | python
(또는 wget
설치 하지 않은 경우 (예 : OS X)
curl https://bootstrap.pypa.io/ez_setup.py | python
접두사와 함께 가능합니다 sudo
.)
버전이 0.6 distribute
이상인 setuptools
경우 먼저 제거해야합니다. *
자세한 내용은 설치 지침 을 참조 하십시오.
* 이미 작동중인 경우 distribute
전환하는 "호환성 래퍼"로 업그레이드하는 setuptools
것이 더 쉽습니다. 그러나 이미 문제가 발생하면 시도하지 마십시오.
sudo apt-get install --reinstall python-pkg-resources
데비안에서 수정했습니다. 일부 .deb 패키지 (내 경우에는 꼬인 세트)를 제거하면 파이썬이 패키지를 찾는 데 사용하는 경로가 깨졌습니다.
우분투 13.10에서 virtualenv에 rhodecode를 설치하는 동안이 오류가 발생했습니다. 나를 위해 솔루션을 실행하는 것이 었습니다
pip install --upgrade setuptools
pip install --upgrade distribute
easy_install rhodecode를 실행하기 전에
나에게도 일어났다. virtualenv가 setuptools를 사용하는 경우 requirements.txt에 "distribute"항목이 포함되어 있으면 문제가 발생한다고 생각합니다. Pip은 배포 할 공간을 만들기 위해 setuptools를 패치하려고 시도하지만 불행히도 반쯤 실패합니다.
쉬운 해결책은 현재 virtualenv를 삭제 한 다음 --distribute 인수를 사용하여 새로운 virtualenv를 작성하는 것입니다.
virtualenvwrapper를 사용하는 경우의 예 :
$ deactivate
$ rmvirtualenv yourenv
$ mkvirtualenv yourenv --distribute
$ workon yourenv
$ pip install -r requirements.txt
CentOS 6에서는 python-setuptools 패키지를 설치하여 수정했습니다.
yum install python-setuptools
나는이 오류가 더 일찍 있었고 가장 높은 등급의 대답은 ez_setup.py
파일 을 다운로드하는 동안 오류가 발생했습니다 . 명령을 실행할 수 있도록 다른 소스를 찾았습니다.
curl http://peak.telecommunity.com/dist/ez_setup.py | python
나는 또한 sudo
그것이 작동 하도록 사용해야한다는 것을 알았 으므로 다음을 실행해야 할 수도 있습니다.
sudo curl http://peak.telecommunity.com/dist/ez_setup.py | sudo python
또한 스크립트를 다운로드 할 수있는 다른 위치를 만들었습니다.
https://gist.github.com/ajtrichards/42e73562a89edb1039f3
이 답변 중 몇 가지를 시도한 후 동료에게 연락 한 후 우분투 16.04에서 나를 위해 일한 것은 다음과 같습니다.
pip install --force-reinstall -U setuptools
pip install --force-reinstall -U pip
필자의 경우 문제가있는 베개 3.1.1의 구 버전 일뿐입니다 (베개 4.x가 정상적으로 작동했습니다). 이제 해결되었습니다!
조금 더 sudo가 필요했습니다. 그런 다음 easy_install을 사용하여 pip를 설치하십시오. 공장.
sudo wget https://bootstrap.pypa.io/ez_setup.py -O - | sudo python
sudo easy_install pip
다음을 수행하여 virtualenv의 오류를 수정했습니다.
복사 된 pkg_resources.py
/Library/Python/2.7/site-packages/setuptools
에
/Library/Python/2.7/site-packages/
이것은 저렴한 해결 방법 일 수 있지만 그것은 나를 위해 일했습니다.
.
설치 도구가 없으면을 입력 virtualenv --system-site-packages /DESTINATION DIRECTORY
하여 마지막 부분을 설치하려는 디렉토리로 변경 하여 시스템 사이트 패키지 설치를 시도 할 수 있습니다 . pkg_rousources.py
lib / python2.7 / site-packages의 해당 디렉토리에 있습니다.
나를 위해, "site"라는 하위 디렉토리가 있기 때문에이 오류가 발생했습니다! 이것이 핍 버그인지 아닌지는 모르겠지만 시작했습니다.
/some/dir/requirements.txt / some / dir / site /
pip install -r requirements.txt가 작동하지 않아 위의 오류가 발생했습니다!
"사이트"에서 "src"로 하위 폴더의 이름을 바꾸면 문제가 해결되었습니다! pip가 "site-packages"를 찾고 있습니까? 미친.
virtualenv를 만든 사용자가 아닌 다른 사용자로 내 virtualenv를 활성화했을 때이 문제가 발생했습니다. 권한 문제인 것 같습니다. @cwc의 답변을 시도하고 출력에서 이것을 보았을 때 이것을 발견했습니다.
Installing easy_install script to /path/env/bin
error: /path/env/bin/easy_install: Permission denied
virtualenv를 만든 사용자로 다시 전환 한 다음 원래 pip install
명령 을 실행 해도 문제가 발생하지 않았습니다. 도움이 되었기를 바랍니다!
오늘도이 문제가있었습니다. 가상 환경 내에서만 문제가 발생했습니다.
나를위한 해결책은 가상 환경을 비활성화하고 pip로 virtualenv를 삭제 한 다음 제거하고 다시 설치하는 것입니다. 그 후 프로젝트를 위해 새로운 가상 환경을 만들었고, pip는 일반 환경과 마찬가지로 가상 환경 내부에서 잘 작동했습니다.
비트 버킷에서 멀리 떨어져서 현재 github에 있습니다 ( https://github.com/pypa/setuptools )
실행할 명령은 다음과 같습니다.
wget https://bootstrap.pypa.io/ez_setup.py -O - | sudo python
나를 위해, 그것은에 대한 사용 권한 문제로 밝혀졌습니다 site-packages
. 그것은 단지 내 개발 환경이기 때문에 권한을 높이고 모든 것이 다시 작동합니다.
sudo chmod -R a+rwx /path/to/my/venv/lib/python2.7/site-packages/
conda 를 통해 설치된 응용 프로그램에서이 문제가 발생하면 이 버그 보고서에 명시된대로 솔루션은 다음과 같이 setup-tools를 설치하는 것입니다.
conda install setuptools
분명히 당신은 setuptools를 놓치고 있습니다. 일부 virtualenv 버전은 기본적으로 setuptools 대신 배포를 사용합니다. --setuptools
virtualenv를 작성할 때 옵션을 사용 하거나 VIRTUALENV_SETUPTOOLS=1
환경에서 설정하십시오 .
필자의 경우 처음에는 2 개의 파이썬 버전이 설치되었고 나중에 이전 버전을 삭제했습니다. 가상 환경을 만드는 동안
virtualenv venv
제거 된 파이썬을 언급하고있었습니다.
나를 위해 일한 것
python3 -m virtualenv venv
pip를 사용하려고 할 때도 마찬가지입니다.
Windows에서 python 3.7을 사용하면 다음과 같이 작동했습니다.
pip install --upgrade setuptools --user
--user
관리자 권한이 필요없는 홈 디렉토리에 패키지를 설치합니다.
OSX에 대한이 안내서 를 따르려고 할 때이 답변 을 보았습니다 . 나를 위해 일한 것은 달리고 python get-pip
난 후에도 함께 해야했습니다 easy_install pip
. 그것은 pip를 전혀 실행할 수 없다는 문제를 해결했습니다. 나는 한 설치 된 macport 물건의 무리가 있습니다. 충돌했을 수 있습니다.
Windows에서는 www.lfd.uci.edu/~gohlke/pythonlibs/ 에서 다운로드 한 pip를 설치 한 후이 문제를 해결했습니다.
먼저 setuptools (easy_install)를 설치해야합니다.
에 setuptools
의해 다시 설치하십시오 .
$ sudo wget https://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz#md5=7df2a529a074f613b509fb44feefefe74e
$ tar -zxvf setuptools-0.6c11.tar.gz
$ cd setuptools-0.6c11/
$ sudo python setup.py build
$ sudo python setup.py install
$ sudo pip install --upgrade setuptools
그러면 모든 것이 잘 될 것입니다.
CentOS 6.7을 사용하고 있으며 파이썬은 2.6.6에서 2.7.11로 업그레이드되었습니다. 많은 다른 답변을 시도한 후에 마침내 다음 작업이 수행됩니다.
sudo yum install python-devel
같은 상황에있는 사람을 도와주세요.
게시 된 답변 중 어느 것도 나를 위해 일하지 않았으므로 pip를 다시 설치하면 효과가 있습니다!
sudo apt-get install python-setuptools python-dev build-essential
sudo easy_install pip
pip install --upgrade setuptools
(참조 : http://www.saltycrane.com/blog/2010/02/how-install-pip-ubuntu/ )
우분투 빌드를 업데이트 한 후이 문제가 발생했습니다. 모든 가상 환경에서 설정 도구를 살펴보고 제거 한 것 같습니다.
이를 해결하기 위해 가상 환경을 대상 디렉토리에 다시 설치했습니다. 이로 인해 누락 된 설정 도구가 정리되었고 작업이 다시 실행되었습니다.
예 :
~/RepoDir/TestProject$ virtualenv TestEnvironmentDir
나에게 좋은 해결책은 --no-download
옵션을 virtualenv ( VIRTUALENV_NO_DOWNLOAD=1 tox
tox 용) 를 사용하는 것이 었습니다 .
Opensuse 42.1에서 다음 문제가 해결되었습니다.
zypper in python-Pygments
ImportError : pkg_resources라는 모듈이 없습니다. 해결책은 다음 명령을 사용하여 python pip를 다시 설치하는 것입니다.
1 단계 : 1 루트 사용자로 로그인하십시오.
sudo su root
2 단계 : python-pip 패키지가있는 경우 제거합니다.
apt-get purge -y python-pip
3 단계 : 3 wget 명령을 사용하여 파일 다운로드 (에서 파일 다운로드 pwd
)
wget https://bootstrap.pypa.io/get-pip.py
4 단계 : 4 파이썬 파일을 실행합니다.
python ./get-pip.py
단계 : 5 Finali exicute 설치 명령.
apt-get install python-pip
참고 : 사용자는 root 여야합니다.
Google App Engine 환경에서 오류가 발생했습니다. 그리고 pip install -t lib setuptools
문제를 해결했습니다.
Python 3을 사용하는 경우 pip 대신 pip3을 사용해야합니다. 명령은 다음과 같습니다$ pip3 install requirements.txt
python 2.7.14 용 pip를 설치하기 위해 쉬운 설치를 사용할 때도 같은 문제가있었습니다. 나에게 해결책은 (최선이 아닐 수도 있지만 나를 위해 일했으며, 아마도 가장 간단 할 것입니다) easy-install.py
포함 된 폴더에도 폴더가 포함되어 pkg_resources
있었고이 폴더를 내 pip-script.py
스크립트가 있는 동일한 폴더에 복사하여 붙여 넣었습니다. 이었다 python27\Scripts
. 그 이후로 python27\Lib\site-packages\pip-9.0.1-py2.7.egg\pip\_vendor
폴더에서도 찾았으므로 pip-script.py
파일을 가져 오기 위해 파일을 수정하는 것이 더 좋습니다 .
참고 URL : https://stackoverflow.com/questions/7446187/no-module-named-pkg-resources
'development' 카테고리의 다른 글
부트 스트랩에서 "col-md-4", "col-xs-1", "col-lg-2"의 숫자 의미 (0) | 2020.02.20 |
---|---|
MySQL 데이터베이스에서 단일 테이블의 백업을 수행하는 방법은 무엇입니까? (0) | 2020.02.20 |
iOS 9에서 App Transport Security가 활성화 된 HTTP URL을 어떻게로드합니까? (0) | 2020.02.20 |
최대 절전 모드는 동시에 여러 개의 백을 가져올 수 없습니다 (0) | 2020.02.20 |
각각을 사용할 때 목록 대 튜플? (0) | 2020.02.20 |