pip 패키지에 대한 종속성 트리를 보여줄 수 있는 방법이 있습니까?
여러 패키지 종속성을 가진 프로젝트가 있으며, 주요 요구 사항은 다음과 같습니다.requirements.txt
내가 전화할 때pip freeze
현재 설치된 패키지를 일반 목록으로 인쇄합니다.저는 또한 그들의 의존 관계를 얻고 싶습니다. 다음과 같은 것들입니다.
Flask==0.9
Jinja2==2.7
Werkzeug==0.8.3
Jinja2==2.7
Werkzeug==0.8.3
Flask-Admin==1.0.6
Flask==0.9
Jinja2==2.7
Werkzeug==0.8.3
목표는 각 특정 패키지의 종속성을 탐지하는 것입니다.
Werkzeug==0.8.3
Flask==0.9
Flask-Admin==1.0.6
그리고 이것들을 내 전류에 삽입합니다.requirements.txt
예를 들어, 이 입력의 경우:
Flask==0.9
Flask-Admin==1.0.6
Werkzeug==0.8.3
저는 다음을 얻고 싶습니다.
Flask==0.9
Jinja2==2.7
Flask-Admin==1.0.6
Werkzeug==0.8.3
설치된 pip 패키지의 종속성을 보여주는 방법이 있습니까?
다음을 살펴보아야 합니다.
$ pip install pipdeptree
$ pipdeptree -fl
Warning!!! Cyclic dependencies found:
------------------------------------------------------------------------
xlwt==0.7.5
ruamel.ext.rtf==0.1.1
xlrd==0.9.3
openpyxl==2.0.4
- jdcal==1.0
pymongo==2.7.1
reportlab==3.1.8
- Pillow==2.5.1
- pip
- setuptools
생성되지 않습니다.requirements.txt
직접 지시한 대로 파일을 작성합니다.그러나 소스(255줄의 파이썬 코드)는 비교적 쉽게 수정할 수 있어야 하며, 그렇지 않으면 (@MERose가 pipdeptree 0.3 README에 표시한 대로) 사용할 수 있습니다.
pipdeptree --freeze --warn silence | grep -P '^[\w0-9\-=.]+' > requirements.txt
의 0.5 버전pipdeptree
또한 에서 JSON 출력을 허용합니다.--json
더 쉽게 기계 구문 분석이 가능한 옵션으로, 덜 읽을 수 있습니다.
경고: py2 전용 / 폐기물
yolk
패키지에 대한 종속성을 표시할 수 있습니다.
- 를 통해 설치되었습니다.
setuptools
종속성 정보가 포함된 메타데이터와 함께 제공됨
$ yolk -d Theano Theano 0.6.0rc3 scipy>=0.7.2 numpy>=1.5.0
를 설치하여 이를 수행할 수 있습니다.pipdeptree
꾸러미
프로젝트 폴더에서 명령 프롬프트를 엽니다.가상 환경을 사용하는 경우 해당 가상 환경으로 전환합니다.
설치하다pipdeptree
pip을 사용한 패키지
pip install pipdeptree
pipdeptree -fl
이 패키지는 프로젝트의 모든 종속성을 나열합니다.
더 많은 pipdeptree를 위해.
저는 이 질문이 있은 지 여러 해가 흘렀다는 것을 알지만, 제가 검색할 때 그것이 나타나서 저는 약간의 지식을 공유해야겠다고 생각했습니다.
그pip-tools
패키지에는 다음과 같은 도구가 포함되어 있습니다.pip-compile
그것은 또한 원래 포스터의 문제를 해결하는 것처럼 보입니다.
pip-compile
setup.py , setup.cfg, pyproject.toml 또는 requirements.in 등의 입력 파일을 가져옵니다.입력 파일은 사용자가 손으로 작성하는 것이며 "직접" 종속성을 포함합니다.정확한 종속성 버전을 지정하지 않을 수도 있지만 버전 범위를 사용할 수도 있고 제약 조건이 전혀 없습니다.이 도구는 새로운 요구 사항을 출력합니다.모든 간접 종속성이 추가된 txt 파일과 정확한 버전에 대한 종속성을 핀으로 고정합니다.
를 됩니다.pip-compile
도구는 원본 파일을 업데이트한 후 필요한 경우 출력 파일에 종속성을 추가하거나 제거합니다.플래그를 추가하여 특정 종속성을 업그레이드하도록 선택할 수도 있습니다.
그래서 그러는 동안에pip-compile
종속성 트리 자체를 보여주는 것이 아니라 종속성 트리의 모든 잎을 수집하는 데 도움이 됩니다(원래 포스터가 최종적으로 하고 싶었던 것으로 추정됨).
여기서 더 읽기: https://github.com/jazzband/pip-tools/
언급URL : https://stackoverflow.com/questions/17194301/is-there-any-way-to-show-the-dependency-trees-for-pip-packages
'programing' 카테고리의 다른 글
둥근 모서리로 레이아웃을 만드는 방법...? (0) | 2023.06.29 |
---|---|
@MAPSTRUCT.소스 매개 변수에 "패키지"라는 속성이 없습니다. (0) | 2023.06.29 |
모바일 장치에서 로컬 호스트 웹 사이트 보기 (0) | 2023.06.29 |
함수에서 셀 값 설정 (0) | 2023.06.29 |
스프링 부트 3마이크로미터 추적 예제 (0) | 2023.06.29 |