2009-06-23 4 views
11

누군가가 내가 메이븐 거울/mirrorOf 같은 아이비 뭔가에 지정합니까 방법을 알고 있습니까? 저는 Maven 프록시 (Nexus)를 사용 중이므로 Nexus 프록시에 액세스해야하는 상위 저장소를 지정하는 도구가 필요합니다.아이비 넥서스 프록시를 통해

메이븐에서

단순히 할 : 나는 아이비의 옵션의 종류를 찾을 수 없습니다

<mirrors> 
    <mirror> 
    <id>central-mirror</id> 
    <mirrorOf>central</mirrorOf> 
    <url>http://localhost:8081/content/repositories/central</url> 
    </mirror> 
</mirrors> 

하지만.

답변

6

나는 이러한 옵션이 직접 존재 생각하지 않습니다. chain을 구현하고 Nexus 리포지토리를 해당 체인의 중심에 배치 할 수 있습니다. 체인이 올바르게 작동하는 방법을 이해하면 아이비 (Ivy)는 리포지토리가 중앙에 있기 전에 리포지토리를 확인하므로 저장소에 관련 내용이 있으면 중앙이 필요하지 않습니다.

은 자세한 내용은 tutorial를 참조하십시오.

+1

감사합니다. 그게 내가 두려워했던 것입니다. Ivy는 Maven과 협력 한 후 내 기대에 미치지 않습니다. –

+2

아이비는 단지 의존성 관리 접근 방법이 다릅니다. –

+6

-1에서 Mark의 의견. 다른 방법은 아니며 누락 된 기능입니다. 예를 들어, '프록시 구성'에 대한 설정이없는 브라우저를 사용하고 있다고 가정하고, 웹 브라우징에 다른 방식으로 접근한다는 의미는 아니며 실제로 해킹이 필요하지 않을 때 소프트웨어를 사용할 수 없다는 의미입니다. 프록시를 설정하십시오. –

-1

나는 같은 일을하지만 Archiva와 매우 유사 것입니다있다.

<chain name="private"> 
<url name="archiva" m2compatible="true"> 
    <ivy pattern="http://..../archiva/repository/internal/[organisation]/[module]/[revision]/ivy.xml" /> 
    <artifact pattern="http://..../archiva/repository/internal/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]" /> 
    <artifact pattern="http://..../archiva/repository/internal/[organisation]/[module]/[revision]/[artifact].[ext]" /> 
    </url> 
</chain> 
+1

Archiva를 사용하여 프록시를 구현하는 것은 문제의 범위에 속하지 않습니다. 여러 가지 방법으로 그렇게 할 수 있습니다. 문제는 그것을 아이비에서 사용하는 것과 비슷한 방법으로 아이비에서 사용하는 것입니다. –

+0

아이비에는 그런 옵션이 없다고 생각합니다. –

-1

Archiva는 메이븐 2 저장소 (Maven을 메타 데이터 유물) 은 일반적으로 아이비의 메타 데이터 (ivy.xml)이없는 관리 : 당신은 다음과 같은 새로운 체인 선언해야합니다. Maven 2 레이아웃은 [organization]/[module]/[revision]/[artifact] - [revision]. [ext]입니다.

우리는 다음과 같은 정보를 제공하기 만

<url name="archiva" m2compatible="true"> 
    <artifact pattern="http://..../archiva/repository/internal/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]" /> 
    </url> 
</chain> 

또는

당신은 당신이 원하는 않는 공공 해결을 작성해야
<settings defaultResolver="archiva"/> 
    <resolvers> 
<ibiblio name="archiva" m2compatible="true" root="http://.../archiva/repository/internal/[organization]/[module]/[revision]/[artifact]-[revision].[ext]"/> 
    </resolvers> 
+0

Archiva를 사용하여 프록시를 구현하는 것은 문제의 범위에 속하지 않습니다. 여러 가지 방법으로 그렇게 할 수 있습니다. 문제는 그것을 아이비에서 사용하는 것과 비슷한 방법으로 아이비에서 사용하는 것입니다. –

8

(Ivy docs @ 자세한 내용은) 기본적으로

$ USERHOME/.ivy2/ivysettings-public.xml 아래에 다음 스 니펫을 저장하십시오. 이것은 트릭을해야합니다.

<ivysettings> 
    <resolvers> 
    <ibiblio name="public" m2compatible="true" root="http://localhost:8081/content/groups/public"/> 
    </resolvers> 
</ivysettings> 
  • 수정되지 않은 표준 설치는 URL에 '넥서스'이있다! 당신이 아티팩트를 전개해야하는 경우
  • , 나는 솔루션 (위 문서 도구에 링크 참조) 공유 해결과 비슷한 일을하는 것입니다 생각하지만, 나는 시도하지 않았습니다.
  • 은 당신이 아니라 사람 중심으로, 거울을 통해 모든 통화를 전달하는 위 받는다는 설정 조각에 이후 더 나은 표준 '컨텐츠/그룹/대중'으로 해결하기 위해 해당 지역의 URL을 변경했습니다. 그들이 올 때 Nexus UI에 그룹에 추가 저장소를 추가하기 만하면됩니다.
  • 프로젝트를로드하는 경우는, 다음 이러한 설정이로드되지 않습니다 당신이 제로 :(
+1

나는 그것을 시도 할 것이지만 프로젝트의 ivysettings.xml이 사용자 구성을 완전히 오버라이드한다는 사실이 나를 위해 유용하지 않을 것 같다. 어쨌든 고마워! –

+0

그 문제는 저장소에서 프로젝트를 가져 와서 빌드 할 수 있어야한다는 것입니다. 지역 환경을 수정하면 창밖에 있습니다 ...하지만 어쨌든 귀하의 답변에 대해 감사드립니다! –

+0

https://svn.apache.org/repos/asf/ant/core/trunk/[email protected]#checkstyle으로이 기술을 시도했지만 아무런 효과가없는 것으로 보입니다. 이전과 같이 "http : //repo1.maven.org/maven2/ ... 다운로드"라는 메시지가 표시됩니다. –

2

이 내가 그것을 작동하게하는 방법입니다에 다시있어 기본값을 준수하지 않는 자신의 ivysettings를합니다 (의 @Heron의 대답은) 나를 위해 작동하지 않았다

<ivy:settings file="/Users/wdb/.ivy2/ivysettings-public.xml" /> 
0 : 개미 빌드에서에

<ivysettings> 
    <settings defaultResolver="default"/> 
    <property name="m2-pattern" value="${user.home}/.m2/repository/[organisation]/[module]/[revision]/[module]-[revision](-[classifier]).[ext]" override="false" /> 
    <resolvers> 
    <chain name="default"> 
     <ibiblio name="public" m2compatible="true" root="http://nexus-server:8081/nexus/content/groups/public"/> 
    </chain> 
    </resolvers> 
</ivysettings> 

]을 참조 :

이 콘텐츠와 파일을 만듭니다

Ivy가 이제 내 넥서스 저장소의 종속성을 해결할 수 있습니다.