2012-09-08 2 views
7

많은 프로젝트에서 여러 파일을 공유하는 JS 스 니펫과 파일이 있습니다. 각 프로젝트에 대해 하나의 파일로 복사하거나 CDN에서 개별 파일로 제공해야합니다. 둘 다 나쁜 생각입니다.JavaScript 용 종속성 관리 및 빌드 도구

JavaScript 용 Maven과 같은 종속성 관리 및 빌드 도구가 있습니까? 이상적으로는 js 의존성 집합을 취하여 cdn에서 제공 할 수있는 단일 js 파일을 작성하는 것이 이상적입니다.

나는 그것을 수행하기위한 스크립트를 작성할 수 있습니다. 하지만 JS에 Maven에 필적할만한 것이 있는지 찾아 보려고합니다.


업데이트 2014 : 여기에 대한 답변을 기반으로하고 다음 내 연구는 가장 인기있는 도구입니다 :

정자, NPM, RequireJS, Browserify, 웹팩, 그런트, 꿀꺽

답변

5

RequireJS하지만 그 종류의 Maven과 다른 점이 있습니다. Maven과 다른 점이 있습니다. jekyll-combiner 및 그 외 수천 가지의 JS 결합기/축소기를 사용할 수 있습니다.

의 경우 메이븐을 사용하는 경우 JavaScript Maven Tools 일 수 있습니다. 그렇지 않다면 임의의 빌드 시스템에 대해 구체화, 다운로드, 결합 등의 통일 된 방법을 알지 못합니다. node.js 파일 중 일부는 유용 할 수 있지만 node.js 컨텍스트 외부에서는 사용하지 않았으므로 확실하지 않습니다.

+0

감사합니다. 빌드 타임에 여러 파일을 하나의 파일에 결합/빌드하나요? –

+0

@ 존스 "빌드시"란 무엇을 의미합니까? 너는 어떻게 지어? 빌드 할 때 Maven의 결합자를 사용했습니다. –

+0

당신이 생각하는 것 중 어느 것이 더 낫다고 생각 하는가? 그리고 파일 경로 대신에 maven과 같은 종속성을 허용하는 파일이 있습니까? –

3

grunt을 살펴보십시오. 그것은 자바 스크립트 프로젝트를위한 매우 유연한 빌드 도구입니다. jquery 팀 및 기타 큰 프로젝트에서 사용됩니다. 그것은 결합, 축소, 테스트, lint js 파일, 자바 스크립트에서 wtitten, 당신이 원하는대로 수십개의 플러그인을 가지고 있습니다.

4

JAR 파일로 JS 라이브러리는 Maven에서 사용할 수있게합니다.

RequireJS은 WebJars를 대체하지 않습니다. 그것을 보완합니다. RequireJS은 런타임시 공용 JS 파일 (CDN)을 사용하지만 Webjars는 빌드시 필요한 파일을 다운로드하고 직접 호스팅합니다.

대부분의 JS 파일은 CDN에서 호스팅되지 않기 때문에 Webthars를 사용하여 빌드시 필요한 JS 파일을 다운로드하고 RequireJS을 사용하여 참조합니다. 그런 식으로 나는 두 세계의 장점을 얻는다.

+1

WebJars는 모든 정적 리소스를 정리 한 zip 파일입니다. 나는 그것을 좋아하지만 사람들은 클라이언트 쪽 종속성을 해결하기 위해 계속 maven을 과소 평가하고 있습니다. 이유를 모르겠다 :-(bower를 사용하고 전체 괴물을 다운로드하는 것보다 훨씬 더 우아하고 우아한 GitHub repo IMO. – aruizca

+0

나는 WebJars에 대한 선택을했다. [다른 몇 가지 옵션] (http : //centurion.nfors)을 보았다.co.kr/w/programming/javascript/start # javascript_and_maven)하지만 WebJars를 시작하는 것이 가장 쉽습니다. –