방금 아주 못생긴 해킹을했습니다.동일한 모듈의 여러 아티팩트에 대한 종속성
두 개의 jar를 생성하는 모듈 A가 있습니다.
moduleA.jar and moduleA.test.jar
module.test.jar은 동일한 저장소에 다른 프로젝트에서 사용되는 다른 저장소에 더 공개되지 않습니다.
은 내가 moduleB에 있음을 소비 할 수있는 방법 moduleA<publications>
<artifact name="moduleA" type="jar" ext="jar" conf="compile"/>
<artifact name="moduleA.test" type="jar" ext="jar" conf="test"/>
</publications>
의 ivy.xml이 추가되었습니다. 나는 Maven이 모듈 당 여러 artifacts를 지원하지 않는다는 것을 알고 있으며, 이것이 IVY에 의해 지원된다는 것을 나는 읽었다. 난 그냥 쓰지 않는 것 같아.
내가 moduleB의 ivy.xml이 시도 : '이름'이후,<dependency org="my.org" name="moduleA" rev="SNAPSHOT" conf="compile,test->default,test" />
<dependency org="my.org" name="moduleA.test" rev="SNAPSHOT" conf="compile,test->default,test" />
을하지만 이것은 분명히 작동하지 않았다 모듈하지 유물의 이름입니다. moduleA에서 :
<artifact name="moduleA" type="test.jar" ext="jar" conf="test"/>
및 moduleB에 : 나는 type 속성을 사용하여 주위에 작업을했다
<dependency org="my.org" name="moduleA" rev="SNAPSHOT" conf="compile,test->default,test" />
이 일을하지만, 매우 추한 보인다. 다음과 같은 ANT 파일을 생성해야하기 때문에 :
moduleA-SNAPSHOT.test.jar
동일한 모듈의 여러 아티팩트에 따라 달라지는 깔끔한 해결책은 없습니까?
이 질문에 ID를 다른 사람 : How do I solve Multiple artifacts of the module X are retrieved to the same file in Apache Ivy?
그것은 마술 덕분에 효과가있었습니다. 내가 배운 또 다른 일반적인 것은 confmapping conf1, conf2, conf3-> conf1, conf2, conf3을 혼동하지 않는 것입니다. 나쁜 습관입니다. –