Как я могу скачать банку с помощью Maven программно
Я пишу приложение, которое требует от меня загрузки jar-файла с учетом идентификатора группы mavens / artifactid / version.
Я сейчас начинаю с
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();
}
}
Так, учитывая URL POM, теперь у меня есть объект maven Model, представляющий его. Кажется, это хорошо работает.
Что я хотел бы знать, так это две вещи:
найдите URL артефакта jar, который модель представляет в репозитории maven, который будет использовать плагин maven дайте модель, найдите файл, представляющий банку в локальном хранилищеУ меня уже есть решения низкого качества: я захожу на mvnrepository.com, вручную кодирую URL, и использую ~ / .m2 / repository в качестве префикса для файла. Я, конечно, могу улучшить это решение, но в итоге я плохо продублирую код, который хорошо протестирован и хорошо используется в базе кода maven.
Мне бы очень хотелось узнать, как это сделать, используя классы maven.
Я провел довольно много поисков в Google, но забавная вещь о поиске чего-либо о maven и jar (даже в stackoverflow) заключается в том, что я нахожу множество решений о том, как использовать maven, а не как программировать с использованием классов maven. .
Спасибо за помощ