Jak programowo pobrać słoik za pomocą Maven

Piszę aplikację, która wymaga ode mnie pobrania pliku jar zawierającego grupę mavens / artifactid / version.

Obecnie zaczynam od

public Model pomToModel(String pomUrl) throws Exception {
URL url = new URL(pomUrl);
    InputStream stream = url.openStream();
    try {
        Model model = new MavenXpp3Reader().read(stream);
        return model;
    } finally {
        stream.close();
    }
}

Biorąc pod uwagę adres URL POM, mam teraz reprezentować obiekt modelu maven. To wydaje się działać dobrze.

Chciałbym wiedzieć dwie rzeczy:

znajdź adres URL artefaktu słoika, który model reprezentuje w repozytorium maven, z którego korzysta wtyczka mavenbiorąc pod uwagę model, znajdź plik reprezentujący słoik w lokalnym repozytorium

Mam już słabej jakości rozwiązania: idę do mvnrepository.com ręcznie kodując adres URL i używam ~ / .m2 / repository jako prefiksu pliku. Mogę oczywiście poprawić to rozwiązanie, ale skończy się to niedostatecznym duplikowaniem kodu, który jest dobrze przetestowany i dobrze wykorzystany w bazie kodu Maven.

Naprawdę chciałbym wiedzieć, jak to zrobić, używając klas Maven.

Zrobiłem sporo wyszukiwania w Google, ale zabawną rzeczą w wyszukiwaniu czegokolwiek o maven i słoikach (nawet na stackoverflow) jest to, że znajduję wiele rozwiązań dotyczących używania maven, a nie jak kodować za pomocą klas maven.

Dzięki za pomoc

questionAnswers(2)

yourAnswerToTheQuestion