2014-05-22 2 views
2

현재 네트워크의 NFSShare 폴더에 파일을 자동으로 업로드하는 Gitlab CI 스크립트를 작성하고 있습니다. 빌드를 구성하고 maven을 사용하기 때문에 pom.xml에서 프로젝트 이름을 "쉽게"가져올 수 있다고 생각했습니다.CommandLine에서 pom.xml 속성 가져 오기

pom.xml에서 명령 줄 도구 등을 통해 속성을 사용할 수있는 방법이 있습니까? 내가 생각할 수있는 유일한 방법은 "손으로 값을 정규 표현하는 것"이었습니다. 제 생각에는 매우 깨끗한 해결책이 아닙니다. 어떤 도움이 많이 주시면 감사하겠습니다 ...

나는 이미 속성이 플러그인을 찾았지만, 단지 실제 .properties의 파일을 통해 새로운 속성을 추가하는 것!

+0

본질적으로 스크립트에서 XML 파일을 읽는 방법을 찾고 있습니다. http://stackoverflow.com/q/4680143/289396 – JoseK

+0

글쎄, 나는 다른 프로그램을 설치할 필요가 없습니다. 나는 이미 "네이티브 (native)"maven 커맨드를 통해 작업하고 있습니다 - 어쨌든 고마워요! – spaceemotion

답변

4

원하는 속성의 이름을 알고있는 경우와 값을 얻을 수 있습니다 : 예를 들어

mvn help:evaluate -Dexpression=[property-name] | findstr /R ^^[^^\[INFO\]] 

:

mvn help:evaluate -Dexpression=basedir | findstr /R ^^[^^\[INFO\]] 

의지를 출력 :

C:\Users\nick\Local\Projects\example 

이 분명히 Mbox가 할 때 수행하는 다른 모든 로깅을 제거하는 findstr이있는 Windows 상자에 사용자의 건물이 있다고 가정합니다. 실행됩니다. grep으로 유닉스에서 비슷한 것을 할 수는 있지만, 나는 그것을 남겨 둔다.

+1

네, 고마워요! 리눅스를 사용하고 있기 때문에''mvn help : evaluate -Dexpression = project.name | grep "^ [^ \ []"''이 올바른 명령입니다;) – spaceemotion