Version: 2019.4
Accessing package assets
종속성

프로젝트 매니페스트

When Unity loads a project, the Unity Package Manager reads the project manifest so that it can compute a list of which packages to load. When a user installs or uninstalls a package through the Package Manager window, the Package Manager stores those changes in the project manifest file. The project manifest file manages the list of packages through the dependencies object.

In addition, the project manifest serves as a configuration file for the Package Manager. It stores the location of one or more package registries. For Git packages, it also provides a lock object defining a commit hash and revision number to guarantee that the Package Manager always installs exactly the same dependencies.

You can find the project manifest file, called manifest.json, in the Packages folder under the root folder of your Unity project. Like the package manifest file, the project manifest file uses JSON (JavaScript Object Notation) syntax.

속성

All attributes are optional. However, if your project manifest file does not contain any values, the Package Manager window doesn’t load, and the Package Manager doesn’t load any packages.

Tip: At any time, you can fix any problems with your registry by choosing Reset packages to defaults from the main Unity Help menu. However, be aware that this action resets all changes you made to the packages in your project so it is best to use this strategy as a last resort.

Key JSON 타입 설명
dependencies 오브젝트 프로젝트에서 이용 가능한 패키지 리스트입니다. 매니페스트의 이 엔트리는 맵 구조를 사용하여 프로젝트에 필요한 버전과 연결된 패키지 이름을 나열합니다.

모든 지원되는 체계의 자세한 개요는 종속성 섹션을 참조하십시오.

참고: 이 리스트에는 간접 종속성(다른 패키지에서 필요로 하는 패키지)이 포함되지 않습니다.
registry String 메인 Unity 패키지 관리자 레지스트리의 URL입니다. 이 URL은 기본 레지스트리 URL(https://packages.unity.com)을 오버라이드합니다.

참고: 자체 레지스트리로 기본 레지스트리를 오버라이드하면 공식 Unity 패키지에 대한 액세스 권한을 잃습니다. 자체 프라이빗 패키지 컬렉션으로 Unity 패키지 라이브러리를 증강하고 싶은 경우에는 scopedRegistries 속성을 설정하여 범위 지정 레지스트리를 사용하십시오.
scopedRegistries 오브젝트 배열 기본 레지스트리 외에 커스텀 레지스트리를 지정하여 자체 패키지를 호스트할 수 있습니다.

자세한 내용은 범위 지정 레지스트리 섹션을 참조하십시오.
lock 오브젝트 커밋 해시와 선택된 리비전이 포함된 Git 패키지 해상도 정보를 설명합니다. 패키지 관리자는 이 속성을 자동으로 업데이트하기 때문에 언제든지 동일한 종속성을 정확히 설치할 수 있습니다.

이 속성은 Git 패키지용으로 예약되어 있지만, 향후 다른 기능도 확실한 패키지 버전 해상도를 보장하기 위해 이 속성을 사용하게 될 수도 있습니다.
testables 문자열 배열 Unity 테스트 러너에 포함할 패키지 이름을 나열합니다. 자세한 내용은 패키지에 테스트 추가를 참조하십시오.

프로젝트 매니페스트 예시

{
  "registry": "https://my.registry.com",
  "scopedRegistries": [{
    "name": "My internal registry",
    "url": "https://my.internal.registry.com",
    "scopes": [
      "com.company"
    ]
  }],
  "dependencies": {
    "com.unity.package-1": "1.0.0",
    "com.unity.package-2": "2.0.0",
    "com.unity.package-3": "3.0.0",
    "com.unity.my-local-package": "file:/path/to/com.unity.my-local-package",
    "com.unity.my-git-package": "https://my.repository/my-package.git#v1.2.3"
  },
  "lock": {
    "com.unity.my-git-package": {
       "hash": "9e72f9d5a6a3dadc38d813d8399e1b0e86781a49",
       "revision": "v1.2.3"
    }
  },
  "testables": [ "com.unity.package-1", "com.unity.package-2" ]
}
Accessing package assets
종속성