How can you find the latest version of a maven artifact from Java using aether?

后端 未结 2 377
一整个雨季
一整个雨季 2020-11-29 12:41

Their documentation is really slim and I was unable to figure it out.

I found a partial answer here, but it doesn\'t have all the code.

How can you find the

2条回答
  •  天命终不由人
    2020-11-29 13:12

    This is from the project's Aether Demonstration and Examples site. I didn't try to run it, but it should be your answer.

    public static void main( String[] args ) throws Exception
    {
        System.out.println( "------------------------------------------------------------" );
        System.out.println( FindNewestVersion.class.getSimpleName() );
    
        RepositorySystem system = Booter.newRepositorySystem();
    
        RepositorySystemSession session = Booter.newRepositorySystemSession( system );
    
        Artifact artifact = new DefaultArtifact( "org.eclipse.aether:aether-util:[0,)" );
    
        VersionRangeRequest rangeRequest = new VersionRangeRequest();
        rangeRequest.setArtifact( artifact );
        rangeRequest.setRepositories( Booter.newRepositories( system, session ) );
    
        VersionRangeResult rangeResult = system.resolveVersionRange( session, rangeRequest );
    
        Version newestVersion = rangeResult.getHighestVersion();
    
        System.out.println( "Newest version " + newestVersion + " from repository "
            + rangeResult.getRepository( newestVersion ) );
    }
    

提交回复
热议问题