2012-10-10 4 views
4

Intellij가 gradle을 사용하여 종속성의 최신 스냅 샷으로 자동 업데이트되도록하는 방법이 있습니까?gradle을 사용하여 최신 스냅 샷을 사용하도록 Intellij 프로젝트를 자동으로 업데이트 할 수 있습니까?

현재 두 개의 프로젝트 A와 B가 있습니다. A는 B가 사용하는 라이브러리입니다. 동시에 처음부터 둘 다 개발하고 있습니다.

개발 지점에서 코드를 체크 아웃하고, gradle 빌드 스크립트를 실행 한 다음 이슈를 내 스냅 샷 아티팩트 리포지토리에 게시하는 Jenkins 빌드가 있습니다.

내 build.gradle이 내 스냅 샷 저장소에서 integration.latest를 사용하도록 설정되어 있지만 Intellij는 자동으로 변경 사항을 가져 오지 않습니다. 나는 jetgradle로 가서 새로 고침을 클릭 한 다음 새 스냅 샷을 가져온 다음 이전 스냅 샷을 제거해야합니다.

더 쉬운 방법이 있습니까?

+0

좀 더 자세한 정보를 제공해 주시겠습니까? 당신은 gradle 아이디어 플러그인을 사용하고 있습니까? (아마 당신의 대답 일 것입니다). "jetgradle, 클릭 새로 고침"이란 무엇입니까? – mathiasbn

+0

gradle 아이디어 플러그인을 사용하고 있습니다. 사이드 패널에는 JetGradle이라는 레이블이 붙어 있습니다. 새로 고침 버튼은 왼쪽 상단에 있습니다. http://www.jetbrains.com/idea/webhelp/resolving-dependencies.html 새로 고침을 클릭하면 스냅 샷 종속성이 녹색으로 나타나고 마우스 오른쪽 버튼을 클릭하고 가져 오기를 클릭하여 실제로 라이브러리를 가져옵니다. 내 라이브러리의 스냅 샷을 생성하고 스냅 샷 버전 번호를 증가시킵니다. 그런 다음 새로 고침을 클릭하면 새 버전이 초록색으로 표시되어 가져올 준비가되었지만 이전 버전은 그대로 유지됩니다. – jgrowl

+0

intellij 워드 프로세서를 보면, 현재 그렇게 할 수 없다는 것 (잘못된 것일 수도 있습니다)입니다. 그 전에는 아이디어 설정 파일을 생성하는 대신 그라디언트 플러그인으로 전환해야했던 같은 문제가있었습니다. 어쩌면 intellij 12는 더 유연하게 만들 것입니다. – rodion

답변

1

그래서 최신 스냅 샷을 자동으로 가져 오는 방법이없는 것처럼 보입니다. 저는 모듈화 된 라이브러리 프로젝트를 멋지게 만들고 싶었지만, 동시에 그들을 개발하면서 동시에 그 프로젝트에 의존하는 프로젝트를 진행했습니다.

나는 build.gradle이있는 메인 프로젝트를 만들었습니다. 그런 다음 라이브러리 프로젝트를위한 자식 서브 모듈을 추가했습니다.

이것은 내가 재사용 할 수있는 분리 된 라이브러리 프로젝트를 가질 수있게 해주지 만, 인공물 서버로 아티팩트가 전송 될 때까지 기다릴 필요가 없으므로 빠른 개발 사이클이 가능합니다.

My Jenkins는 여전히 내 인공 서버에서 아티팩트를 가져옵니다.

0

프로젝트 A에서 로컬 코드를 업데이트하고 해당 프로젝트 B가 A를 종속성으로 반영하는지 보려면 프로젝트 A에서 gradle install을 실행해야합니다 (설치는 IntelliJ 작업 패널에서 사용할 수 있습니다). 설치하면 로컬 메이븐 저장소 및 IntelliJ 최신 코드로 업데이트됩니다.