프로젝트에서 Nexus Repository Manager를 사용하여 모든 병을 저장하고 있습니다. 항아리와 함께 그룹 아래에는 pom.xml, .md5, .sha1 파일과 같은 다른 파일이 있음을 알 수 있습니다. 서버 시작시 이러한 파일이 필요합니다. 런타임에 Java/Curl 명령/mvn 종속성 명령을 사용하여 프로그래밍 방식으로 특정 그룹의 모든 파일을 다운로드 할 수있는 방법이 있습니까?Maven Repository에서 command 또는 Java 프로그램을 통해 groupId 아래의 모든 파일을 다운로드하십시오.
0
A
답변
1
Maven은 캐싱을 위해 로컬 저장소도 사용합니다. 기본 위치는 Default: ${user.home}/.m2/repository
입니다. [maven_dir]/conf/아래의 파일 settings.xml에서이 설정을 확인할 수 있습니다.
종속성을 업데이트하려면 -U
옵션을 사용하십시오. 즉 mvn clean install -U
pom.xml 파일 내에서 nexus repo 설정을 잊지 마세요. http://maven.apache.org/pom.html#Repository
0
간단한 방법으로 해결할 수 있습니다. 모든 XML을 JAR/ZIP 파일로 묶고 내 groupId의 zip 파일을 Maven 저장소에 업로드하십시오. 그런 다음 프로그램으로 CURL/WGET을 사용하여 zip을 다운로드하고 런타임에 해당 zip 파일의 내용을 사용 가능한 유틸리티를 사용하여 압축을 풉니 다.
- 모든 XML을 zip 파일로 저장하십시오.
- mvn deploy를 사용하여이 zip 파일을 Maven Nexus Repo에로드하십시오.
- 런타임 중에 프로그래밍 방식으로 해당 ZIP 파일에 간단한 weburl 호출을 사용하여 zip 파일을 다운로드하십시오.
- ZIP4J 또는 다른 라이브러리를 사용하여 내용을 필요한 출력 폴더에 압축을 풉니 다.
- 흐름 중에 필요할 때이 서버에서 파일을 선택하십시오.
어딘가 누군가에게 도움이되기를 바랍니다. :)
답장을 보내 주셔서 감사합니다. 네, 알고 있습니다. 하지만 내 문제는 런타임에 그룹 아래에 파일을 다운로드하고 싶습니다. 그래서 repo에서 XML의 내용에 변화가있을 때 패키지를 만들고 싶지 않습니다. –
[Nesux API] (http://www.sonatype.org/nexus/2015/08/13/using-the-rest-api-in-nexus-2/)? 및 [mvn dependency : get] (http://maven.apache.org/plugins/maven-dependency-plugin/get-mojo.html)을 참조하십시오. 예를 들면 다음과 같습니다.'mvn org.apache.maven.plugins : maven-dependency-plugin : 2.1 : -DrepoUrl = url -Dartifact = groupId : artifactId : version' –
예. 누군가 나에게 좋은 접근법을 제안했다. 기본적으로 모든 XML을 JAR/ZIP 파일로 묶고 내 groupId 아래에 해당 zip 파일을 업로드하십시오. 그런 다음 프로그래밍 방식으로 CURL/WGET을 사용하여 zip을 다운로드하고 런타임에 사용 가능한 유틸리티를 사용하여 해당 zip 파일의 내용을 압축 해제하십시오. –