2016-08-08 2 views
0

파이썬/쉘을 사용하는 자바 프로젝트를위한 일종의 배포 스크립트를 만들고 있습니다. 스크립트는 현재 Sonatype Nexus 저장소 또는 프로젝트의 대상 폴더에서 jar 파일을 복사 할 수 있습니다. 원격/넥서스 설정은 모두 훌륭하게 보입니다. 그러나 프로젝트가 설치된 위치에 상관없이 jar의 위치를 ​​항상 알 수 있기 때문에 로컬 Maven 저장소에서 복사하는 대신에 관심이 있습니다.로컬 Maven 저장소에서 jar 복사하기

제 질문은 다음과 같습니다. 첫 번째 항아리를 폴더 ~/.m2/repository/{groupid}/{artifactid}/{version}에서 복사하여 무엇인가를 간과하고 있습니까? 아니면 이것에 대해 좋은 방법이 될까요? groupId 두 개 이상의 부분으로 구성되어있는 경우

+0

어떻게 로컬 저장소의 위치를 ​​얻습니까? 'settings.xml'을 읽는가? – JimHawkins

+0

필자는 지금까지 ~/.m2/repository에 항상 있다고 가정했지만 분명히 읽을 수 있습니다. 나는 일단 저장소를 발견하면 저장소의 구조에 대해 주로 염려합니다. –

+0

질문 뒤에 "큰 그림"이 무엇인지 알고 싶습니다. jar 파일 옆에 쉘 스크립트와 디렉토리 구조 같은 것을 포함하는 배포판을 만들고 싶습니까? maven-assembly-plugin 사용을 고려 했습니까? – JimHawkins

답변

1

는, 예를 org.apache.httpcomponents를 들어, 다음 폴더 구조는 다음을 반영 org/apache/httpcomponents/...

enter image description here

버전 디렉토리 내에 하나 개 이상의 jar 파일이있을 수 있습니다.

+0

지금 봅니다. 폴더 안에 여러 개의 항아리가있을 수 있는지 여부와 같은주의 사항이있는 경우 실제로 관심이있었습니다. "-javadoc.jar"또는 "-sources.jar"로 끝나는 항아리를 복사하지 않도록하는 것이 안전해야합니다. 또한이 로컬 "해킹"은 빠른 테스트를위한 것입니다. 이 스크립트는보다 "실제적인"배포를 위해 Nexus의 API를 사용하여 릴리즈를 얻습니다. –

관련 문제