Может ли Maven сослаться на родительский POM из частного сегмента s3?
При использовании приватного сегмента AWS S3 в качестве репозитория Maven существует множество работающих провайдеров s3 wagon, которые прекрасно работают для развертывания и извлечения зависимостей с использованием протокола папки s3://[bucket]/.
Однако, когда вы пытаетесь сделать это с родительской ссылкой POM, то есть
<parent>
<groupId>com.my.company</groupId>
<artifactId>my-parent-pom</artifactId>
<version>1.0.0</version>
</parent>
Существующий только в частном репозитории S3 Maven, кажется, что Maven проверяет только определенные репозитории на основе HTTP и не пытается заглянуть в репозиторий S3.
Вагон S3 в этом проекте определяется как
<build>
<extensions>
<extension>
<groupId>org.springframework.build</groupId>
<artifactId>aws-maven</artifactId>
<version>5.0.0.RELEASE</version>
</extension>
</extensions>
</build>
Что, опять же, прекрасно работает для нормальных зависимостей, но не для родительской ссылки POM
Ищите какой-нибудь способ правильного разрешения родительского POM в репозитории S3 Maven
2 ответа
На мой комментарий к другому сообщению в этой теме: Если вы используете Maven 3.2.5 или более позднюю версию, вы можете указать плагин в качестве JAR в командной строке.
Если вы используете Maven 3.3.1 или новее, создайте .mvn/extensions.xml
файл в вашем проекте, который определяет универсал S3, чтобы он был предварительно загружен к моменту разрешения родительского POM.
Подробности см. В примечаниях к выпуску Maven 3.3.1: https://maven.apache.org/docs/3.3.1/release-notes.html
Ответ - нет.
Основная проблема с репозиторием Maven и S3 заключается в том, что Maven загружает POM-родитель перед фургоном S3.
Проверьте здесь для деталей: http://www.sonatype.org/nexus/2015/03/03/why-s3-is-not-the-perfect-maven-repository/