Version: 2020.3
패키지 상태 및 라이프사이클
전역 캐시

종속성 및 해결

Package Manager 창에서 작업하는 경우 다양한 소스(레지스트리, 로컬 폴더, 타르볼Git URL)에서 패키지를 설치할 수 있습니다. 하지만 패키지 관리자가 이러한 소스에서 패키지를 원활하게 설치하지만, 먼저 일련의 계산을 통해 설치할 버전 그리고 이 버전을 지원하기 위해 설치할 다른 패키지 및 버전을 결정해야 합니다.

Package Manager 창에서 설치할 패키지 버전을 선택하면 프로젝트 매니페스트종속성 을 추가합니다. 이는 프로젝트가 작동하기 위해 특정 패키지의 특정 버전이 필요하다는 선언입니다. 프로젝트 매니페스트에 나타나는 종속성을 “직접” 종속성이라고 합니다.

Packages can also require other packages in order to work. These are called “indirect”, or transitive, dependencies. The package developer adds these dependencies to the package’s manifest during development. For example, in the diagram below, the alembic@1.0.7 package has a dependency on the timeline@1.0.0 package, so the timeline package is an “indirect ”dependency. On the other hand, the project has dependencies on the cinemachine@2.6.0 and alembic@1.0.7 packages, so those are both “direct” dependencies.

직접 종속성과 간접 종속성을 보여주는 다이어그램

패키지 버전을 종속성으로 추가하는 경우 해당 버전은 반드시 패키지 관리자가 설치하는 버전일 필요는 없는데, 이는 직접 또는 간접 종속성인지 여부에 관계없이 프로젝트의 모든 종속성을 고려해야 하기 때입니다. 설치할 패키지를 결정하기 위해 패키지 관리자는 모든 직접 및 간접 종속성 리스트를 구성합니다.

패키지 관리자는 한 번에 하나의 패키지 버전만 설치할 수 있으므로 설치할 각 패키지의 버전을 결정하기 위해서는 종속성 그래프를 구성해야 합니다. 패키지 관리자가 모든 버전 충돌을 성공적으로 해결하면 잠금 파일에 해결 방법을 저장하여 결정론적 분명성을 보장(매번 동일한 패키지가 안정적으로 설치됨)하고, 종속성 그래프를 다시 계산하는 데 필요한 시간과 리소스를 줄입니다.


패키지 상태 및 라이프사이클
전역 캐시
Copyright © 2020 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961