2013-08-09 3 views
1

내 프로젝트의 릴리스 프로세스를 태그 지정에서 배포까지 자동화하기 위해 노력하고 있습니다. 저는 이것을 위해 자바 프로젝트를 만들었습니다.이 스테이지는 태그 지정에서 빌드, 배포까지 모든 단계를 통합하는 단일 장소가 될 것입니다.릴리스 및 배포 프로세스 자동화

태그 추가 및 버전 관리 목적으로 maven release plugin을 사용하고 싶지만 모든 maven 명령을 명령 줄을 통해 실행해야하므로 결과와 출력을 확인하기가 어렵습니다. 이 문제를 해결할 수있는 한 가지 옵션은 some api [우리가 svnkitsubversion]처럼 maven 명령을 실행할 수있는 경우입니다. 비록 내가 명령 줄을 통해 자바 [Runtime.exec]를 통해 maven 명령을 실행할 수 있지만, 다시 문제와 결과를 확인하는 것이 될 것이다.

maven 용 Java 라이브러리에 대한 제안 사항이 있습니까? 또는 같은 일을하는 다른 방법? 내 기본 목표는 내 프로젝트의 버전을 제어하고 빌드에 태그를 지정하는 것입니다.

편집 : 메이븐 베더가 지원되지 않는

더 이상 : http://maven.40175.n5.nabble.com/Maven-Embedder-td4708683.html

편집 :

나는 방법을 발견

, 허드슨은 받는다는 해제 플러그인을 제공하고 나는 허드슨 자바 클라이언트를 개발했다 . 그래서 매개 변수를 통해 maven release를 제어 할 수 있습니다.

+0

가능한 복제본 [Embedding Maven 3] (http://stackoverflow.com/questions/3333251/embedding-maven-3) – chrylis

+0

downvote로 즐겨보세요. 이 질문에 무슨 문제가 있습니까? – Lokesh

+0

@chrylis : 그 질문은 거의 정보가 없습니다. mavne embedder가 무엇인지는 아무도 모릅니다. 나는 downvoting에 대한 어떤 이유로 이것을 보지 않는다. – Lokesh

답변

2

이미 메이븐과 관계가있는 해결책이 있습니다. 주어진 단계를 정확히 지원하는 maven-release-plugin입니다.

maven-release-plugin의 prepare-goal은 모든 변경 사항이 커밋되었는지 확인하고 svn에 태그를 만드는 것과 같은 작업을 정확하게 수행합니다.

그렇다면 왜 Java를 통해 실행 하시겠습니까? 당신은 젠킨스를 이런 목적으로 사용하거나 커맨드 라인 만 사용하면됩니다 :

그게 전부입니다.

+0

사용자가 한 번의 클릭으로 릴리스를 수행 할 수있는 데스크톱 클라이언트를 만들기 위해 노력하고 있습니다. 예 허드슨 플러그인 도움이 될 수 있지만 별도의 자바 API가 도움이 될 것입니다하지만 난 아무도 사용할 수있는 느낌. – Lokesh

+1

사용자가 데스크톱 클라이언트가 필요한 이유는 사용자가 로컬 컴퓨터에 릴리스를 생성해서는 안되기 때문입니다.일반적으로 빌드 서버에있는 정의 된 환경에서만 수행해야합니다. – khmarbaise

+0

나는 귀하의 요지에 동의합니다. – Lokesh