설치된 패키지로 bower.json을 업데이트하는 방법?


129

내 프로젝트에서 저장 옵션 bower없이 구성 요소를 설치했습니다 . 이제 업데이트를 원 하십니까?bower.json

설치된 패키지로 bower.json을 어떻게 업데이트합니까?


2
이를 수행하는 한 단계 방법의 부족은 상당히 부족한 것 같습니다. 설치 제거 명령이 거기에 있기 때문에, 실행처럼 보인다 bower install없이 --save항상 열심히 결코 쉬울 것이다.
Chris

1
bower.json에 아무것도 없다면, 그것을 제거하고 bower init콘솔에 입력 하십시오.
Jean-Luc Barat

답변:


146

종속성을 나열하십시오.

bower list

그런 다음 다음과 같이 param '--save'를 사용하여 모든 설치 명령을 실행해야합니다.

bower install bootstrap --save

어려운 작업이지만 수천 개의 종속성이있는 경우 작업을 자동화하는 스크립트를 만들 수 있습니다.


이것은 좋은 대답입니다. 감사!
jessegavin

1
어떤 패키지가 다른 패키지의 종속성으로 다운로드되었는지 명확하지 않기 때문에 ~ 10 패키지에서만 문제가 있음을 발견하여 bower가 버전 번호를 묻는 메시지를 표시했습니다. 정답에도 불구하고 결과 bower.json 파일은 정확하지 않았습니다. 나는 Sebastien의 답변으로 일했는데 나에게 도움이되었습니다.
gb2d

bower.json에 선언되지 않은 종속성은 콘솔의 "익스트림"태그로 식별됩니다.
otaviodecampos

135

스크립트를 작성하지 않으려면 약간의 트릭을 사용하십시오.

예를 들어 bower2.json에서 bower.json의 이름을 변경하기 전에.

그럼 당신은 할 수 있습니다 :

$ bower init

(bower.json 파일을 자동으로 작성하십시오).

모든 질문은 현재 설정으로 미리 채워져 있어야합니다.

그것이 당신에게 물을 때 :

현재 설치된 구성 요소를 종속성으로 설정 하시겠습니까? 네 라고 말하다,

이제 새로운 bower.json 파일에 모든 종속성 이 있습니다 (이전 bower2.json에 모든 것이 올바른지 확인할 수 있습니다)


이 작업을 수행 할 때 언급하는 레지스트리 옵션은 무엇입니까?이 명령은 로컬 작업 만 수행한다고 가정했습니다. 나는 그 편리한 질문으로 내 것을 비공개로 유지하기로 결정했지만 그 의미를 배우고 싶습니다. 인터넷 종류 레지스트리가 있습니까? 나는 이것이 bower가 npm install 종류의 일을하는 방법이라고 인라인 생각하고 있습니다.
착륙

2
@landed : 그것은 bower 패키지 레지스트리가 될 것입니다 ( bower.io/search ) HTH
FOR

bower.json목록에 없기 때문에 나에게 적합 하지 않았습니다 angular:'1.5.5'. 이것은 내가했기 때문이다 angular-animate설치가에 의존하기 때문에 angular 1.5.5이물 포함하지 않기로 결정 angularbower.json(누군가가 작업을 수행 할 때 어쨌든 그것을 설치할 생각 bower install이에 대한 bower.json). 누군가 제거하면이 문제가 될 것 angular-animate에서 bower.json하는 경우는 bower설치되지 않습니다 angular상장하지 때문에 너무.
Akash

35

약간 힘든 방법은 실행하고 bower list, 외부로 표시된 패키지를 찾아 수동으로 패키지 의 종속성에 추가하는 것 bower.json입니다.

외부에 많은 패키지 가있는 경우 "현재 설치된 구성 요소를 종속성으로 설정 하시겠습니까?" 를 실행 bower init하고 라고 대답 하면이 문제를 해결하는 것이 더 쉬울 수 있습니다 . 이것은 현재를 가져 와서 bower.json읽은 다음 이전 정보를 사용하여 새 것을 만듭니다. 이상적인 경우에는 외부 파일과 동일한 파일을 갖게됩니다. 패키지가 추가 된 됩니다.

경고 : 첫째, 프로세스에서 손실 된 것이있을 수 있습니다 (예 :) devDependecies. 두 번째 버전의 bower (v1.2.7)에서는 그렇지 않습니다. 현재 패키지 정보를 보존 ! 나는 그것이 버그라고 느낀다. 그러나 이전 파일을 저장하고 생성 된 파일과 수동으로 병합 할 수 있습니다.

또한 많은 개발자들이 환영 하는 바우처 문제열어 옵션이나 무언가를 요청해야합니다 .


3
참고 : bower 1.3.3은 현재 패키지 정보를 유지합니다.
Bill Keller

27

bower-check-updates를 사용할 수 있습니다 (컴퓨터에 node.js가 설치되어 있어야 함).

bower-check-updates 모든 종속성의 최신 버전으로 bower.json을 자동으로 조정하는 유틸리티입니다

bower-check-updates- npm-check-updates 포크 이므로 모두 동일하지만 업데이트됩니다.bower.json .package.json

npm install -g bower-check-updates
bower-check-updates -u
bower install 

이것은 bower-check-updates전 세계적으로 설치 되므로 어디에서나 시작할 수 있습니다.

npm-check-updates pleas에 대한 자세한 정보는 이 주제를 참조하십시오.


아마bower install
Ámon Tamás

@ ÁmonTamás bower install은 bower.json을 업데이트하지 않았습니다.
Sergei Panfilov

5
bower-check-updates의 저자는 npm-check-updates에 찬성하여 프로젝트를 더 이상 사용하지 않으며 bower.json 업데이트 지원을 추가했습니다.
congusbongus

2

설치 한 bower 패키지가 많지 않으면을 작성하십시오 bower install [package_name] --save. 이것은 bower.json 파일을 업데이트합니다.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.