2016-06-28 4 views
0

내 목표는 이슈 배치를위한 내부 도구를 개발하는 것입니다. 산출물은 지역 저장소 관리 시스템 (sonatype nexus)에 있습니다. 연구가 끝난 후 Aether-Api로 작업을 구현하려고했습니다. 그러나 나는 그들 자신의 examples 중 하나를 재 프로그래밍하는데 실패했다. 오류를 평가할 수 없습니다.aether-api로 sonatype nexus에서 사용 가능한 버전을 나열하십시오

public class SourceMaven 
{ 
    private static RepositorySystem newRepositorySystem() 
    { 
     DefaultServiceLocator locator = MavenRepositorySystemUtils.newServiceLocator(); 
     locator.addService(RepositoryConnectorFactory.class, BasicRepositoryConnectorFactory.class); 
     locator.addService(TransporterFactory.class, FileTransporterFactory.class); 
     locator.addService(TransporterFactory.class, HttpTransporterFactory.class); 

     return locator.getService(RepositorySystem.class);   
    } 
    private static RepositorySystemSession newSession(RepositorySystem system) 
    { 
     DefaultRepositorySystemSession session = MavenRepositorySystemUtils.newSession(); 
     LocalRepository localRepo = new LocalRepository("/usr/local/home/myusername/tmp/aether"); 
     session.setLocalRepositoryManager(system.newLocalRepositoryManager(session, localRepo)); 

     return session;   
    } 
    private static List<RemoteRepository> newRepositories(RepositorySystem system, RepositorySystemSession session) 
    { 
     return new ArrayList<RemoteRepository>(Arrays.asList(newCentralRepository())); 
    } 
    private static RemoteRepository newCentralRepository() 
    { 
     return new RemoteRepository.Builder("sonanexus", "default", "http://ournexusservername:8081/nexus/#nexus").build(); 
    } 


    public List<String> getReleaseList(String url) 
    { 
     RepositorySystem system = newRepositorySystem(); 
     RepositorySystemSession session = newSession(system); 

     Artifact artifact = new DefaultArtifact("org.eclipse.aether:aether-util:[0,)"); 

     VersionRangeRequest rangeRequest = new VersionRangeRequest(); 
     rangeRequest.setArtifact(artifact); 
     rangeRequest.setRepositories(newRepositories(system, session)); 

     try 
     { 
      VersionRangeResult rangeResult = system.resolveVersionRange(session, rangeRequest); 
      List<Version> versions = rangeResult.getVersions(); 

      System.out.println("available versions " + versions); 
     } 
      catch (VersionRangeResolutionException ex) 
     { 
      System.out.println("failed ..."); 
     } 

     return null; 
    } 
} 

출력으로는 오류없이 빈 목록 만 표시됩니다.

가능한 버전 []

requestested 이슈 좌표 우리 넥서스에 연결되고 webinterface에서 찾을 수있다.

답변