npm 자바스크립트 의존성 버전 형식

package.json 파일에 설치된 패키지들의 버전은 다양한 형식으로 지정될 수 있습니다. 가상의 라이브러리 somelib을 예로 들어 이러한 형식을 알아보겠습니다.

다음 예제는 정확히 2.4.2 버전을 요구합니다:

package.json{
  "dependencies": {
    "somelib": "2.4.2"
  }
}

다음 예제는 2.4.2와 호환되는 최신 버전을 요구합니다:

package.json{
  "dependencies": {
    "somelib": "^2.4.2"
  }
}

다음 예제에서 프로젝트는 2.4.2, 2.4.3, 2.4.4 등의 버전과 함께 작동합니다:

package.json{
  "dependencies": {
    "somelib": "~2.4.2"
  }
}

다음 예제에서 프로젝트는 2.4, 2.5, 2.6 등의 버전과 함께 작동합니다:

package.json{
  "dependencies": {
    "somelib": "~2.4"
  }
}

다음 예제에서 프로젝트는 패키지 2.4의 모든 패치(patch) 버전과 함께 작동합니다:

package.json{
  "dependencies": {
    "somelib": "2.4.x"
  }
}

다음 예제에서 프로젝트는 버전 2의 모든 마이너(minor) 버전과 함께 작동합니다:

package.json{
  "dependencies": {
    "somelib": "2.x"
  }
}

다음 예제에서 프로젝트는 버전 2.4 이상과 함께 작동합니다:

package.json{
  "dependencies": {
    "somelib": ">=2.4"
  }
}

다음 예제에서 프로젝트는 2.4.2부터 3.1.1까지의 모든 버전과 함께 작동합니다:

package.json{
  "dependencies": {
    "somelib": "2.4.2 3.1.1"
  }
}