2013-09-05 3 views
3

릴리스 프로세스를 자동화하기 위해 프로젝트에 Maven 릴리스 플러그인을 구현 중입니다. 는 그러나 release-prepare 작업은 내가 http://mszalbach.blogspot.in/2011/02/maven-release-plugin-and-commit_05.html에 언급 된 모든 단계를 시도했지만 아무도 일하지이 오류Maven 릴리스 플러그인이 특수 문자로 비밀번호를 구문 분석하지 못했습니다.

authorization failed: Could not authenticate to server: rejected Basic challenge 

와 코드와 오류를 체크인하는 데 실패합니다.

모든 svn 명령을 명령 줄을 통해 성공적으로 실행할 수 있습니다.

나는 꽤 괜찮은 paven에서 maven scm plugin을 사용하여 코드를 체크인 할 수 있기 때문에 나의 svn urls가 괜찮다고 확신한다.

해결 방법에 대한 제안 사항이 있으십니까?

편집 :

난 그냥 실현 해제 : 캐시 이름/passwd를 성공적으로 실행을 준비합니다. 하지만 만약 내가 -Dusername=testUser -Dpassword=passwd 통해 동일한 사용자에게 제공하면 실패합니다. 자격 증명이 정확합니다. 매개 변수를 전달하는 동안 뭔가 빠졌습니까?

EDIT2가 :

내가 문제를 발견

, 비밀번호는 $ 기호로 시작하고 Maven은이 문제가 오는 이유를 제대로 먹으 렴 구문 분석되지 않습니다. maven 명령을 실행하는 암호에서 특수 문자를 처리하는 방법은 무엇입니까?

답변

2

먼저 서버 요소를 ${user.home}/.m2/settings.xml 파일에 추가하십시오.

<server> 
    <id>your.subversion.host</id> 
    <username>yourUserName</username> 
    <password>yourPassword</password> 
</server> 
  • 당신은 Subversion을 호스트 (예를 들어 subversion.mycompany.com) 다음이가 maven-release-pluginmaven-scm-plugin 모두 작동 설정 한 ID를 확인합니다.
  • directions 다음에 암호를 암호화 할 수 있습니다.

그런 다음 POM에 다음을 추가하십시오. (팁 : 우리는 우리의 기업 부모 POM이 있습니다.)

<project> 
    ... 
    <properties> 
     <project.scm.id>your.subversion.host<project.scm.id> 
    </properties> 
</project> 

참고 : maven-release-plugin FAQMaven settings.xml configuration을.

+0

감사합니다. 도움이됩니다. 하지만 난 매개 변수로 사용자 이름, 비밀 번호를 전달에 예민한 오전. 나는 그 릴리스를 깨달았다 : prepare는 캐시 된 username/passwd와 함께 성공적으로 실행된다. 하지만 동일한 사용자에게 -Dusername = testUser -Dpassword = passwd를 지정하면 실패합니다. 자격 증명이 정확합니다. 여기 단서가 있니? – Lokesh

+0

RE : your edit 2. 문제가있는 Maven이 아니며 '$'를 해석하는 것은 운영 체제입니다. 특수 문자를 이스케이프 처리하는 OS의 방법을 사용해보십시오. – user944849

관련 문제