ошибка компиляции maven - [ОШИБКА] Неразрешимый POM импорта: не удалось передать артефакт - PullRequest
5 голосов
/ 03 февраля 2020

Новичок в Maven, возможно, новичок ie ошибка.

Я делаю начальное введение в курс Дженкинса. в нем мы клонируем репозиторий git http://github.com/g0t4/jenkins2-course-spring-boot в его подкаталоге jenkins2-course-spring-boot\spring-boot-samples\spring-boot-sample-atmosphere, где находится следующий файл pom. xml:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <parent>
                <!-- Your own application should inherit from spring-boot-starter-parent -->
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-samples</artifactId>
                <version>1.4.0.BUILD-SNAPSHOT</version>
        </parent>
        <artifactId>spring-boot-sample-atmosphere</artifactId>
        <name>Spring Boot Atmosphere Sample</name>
        <description>Spring Boot Atmosphere Sample</description>
        <url>http://projects.spring.io/spring-boot/</url>
        <organization>
                <name>Pivotal Software, Inc.</name>
                <url>http://www.spring.io</url>
        </organization>
        <properties>
                <main.basedir>${basedir}/../..</main.basedir>
        </properties>
        <dependencies>
                <dependency>
                        <groupId>org.springframework.boot</groupId>
                        <artifactId>spring-boot-starter-web</artifactId>
                </dependency>
                <dependency>
                        <groupId>javax.inject</groupId>
                        <artifactId>javax.inject</artifactId>
                        <version>1</version>
                </dependency>
                <dependency>
                        <groupId>org.atmosphere</groupId>
                        <artifactId>atmosphere-runtime</artifactId>
                        <version>2.2.4</version>
                </dependency>
                <dependency>
                        <groupId>org.webjars</groupId>
                        <artifactId>atmosphere-javascript</artifactId>
                        <version>2.2.3</version>
                </dependency>
                <dependency>
                        <groupId>org.springframework.boot</groupId>
                        <artifactId>spring-boot-starter-test</artifactId>
                        <scope>test</scope>
                </dependency>
                <dependency>
                        <groupId>org.springframework</groupId>
                        <artifactId>spring-websocket</artifactId>
                        <scope>test</scope>
                </dependency>
        </dependencies>
        <build>
                <plugins>
                        <plugin>
                                <groupId>org.springframework.boot</groupId>
                                <artifactId>spring-boot-maven-plugin</artifactId>
                        </plugin>
                        <plugin>
                                <groupId>org.jacoco</groupId>
                                <artifactId>jacoco-maven-plugin</artifactId>
                                <version>0.7.7.201606060606</version>
                                <executions>
                                        <execution>
                                                <id>default-prepare-agent</id>
                                                <goals>
                                                        <goal>prepare-agent</goal>
                                                </goals>
                                        </execution>
                                        <execution>
                                                <id>default-report</id>
                                                <phase>prepare-package</phase>
                                                <goals>
                                                        <goal>report</goal>
                                                </goals>
                                        </execution>
                                </executions>
                        </plugin>
                </plugins>
        </build>
</project>

, когда я пытаюсь скомпилировать с помощью mvn compile, я получаю следующий журнал сборки с ошибками:

[INFO] Scanning for projects...
Downloading from spring-snapshots: http://repo.spring.io/snapshot/org/springframework/spring-framework-bom/4.3.2.BUILD-SNAPSHOT/maven-metadata.xml
[WARNING] Could not transfer metadata org.springframework:spring-framework-bom:4.3.2.BUILD-SNAPSHOT/maven-metadata.xml from/to spring-snapshots (http://repo.spring.io/snapshot): Authorization failed for http://repo.spring.io/snapshot/org/springframework/spring-framework-bom/4.3.2.BUILD-SNAPSHOT/maven-metadata.xml 403 Forbidden
Downloading from spring-snapshots: http://repo.spring.io/snapshot/org/springframework/spring-framework-bom/4.3.2.BUILD-SNAPSHOT/spring-framework-bom-4.3.2.BUILD-SNAPSHOT.pom
[ERROR] [ERROR] Some problems were encountered while processing the POMs:
[ERROR] Non-resolvable import POM: Could not transfer artifact org.springframework:spring-framework-bom:pom:4.3.2.BUILD-SNAPSHOT from/to spring-snapshots (http://repo.spring.io/snapshot): Authorization failed for http://repo.spring.io/snapshot/org/springframework/spring-framework-bom/4.3.2.BUILD-SNAPSHOT/spring-framework-bom-4.3.2.BUILD-SNAPSHOT.pom 403 Forbidden @ org.springframework.boot:spring-boot-dependencies:1.4.0.BUILD-SNAPSHOT, C:\JenkinsTryOut\jenkins2-course-spring-boot\spring-boot-dependencies\pom.xml, line 2058, column 16
[ERROR] 'dependencies.dependency.version' for org.springframework:spring-websocket:jar is missing. @ line 46, column 15
 @
[ERROR] The build could not read 1 project -> [Help 1]
[ERROR]
[ERROR]   The project org.springframework.boot:spring-boot-sample-atmosphere:1.4.0.BUILD-SNAPSHOT (C:\JenkinsTryOut\jenkins2-course-spring-boot\spring-boot-samples\spring-boot-sample-atmosphere\pom.xml) has 2 errors
[ERROR]     Non-resolvable import POM: Could not transfer artifact org.springframework:spring-framework-bom:pom:4.3.2.BUILD-SNAPSHOT from/to spring-snapshots (http://repo.spring.io/snapshot): Authorization failed for http://repo.spring.io/snapshot/org/springframework/spring-framework-bom/4.3.2.BUILD-SNAPSHOT/spring-framework-bom-4.3.2.BUILD-SNAPSHOT.pom 403 Forbidden @ org.springframework.boot:spring-boot-dependencies:1.4.0.BUILD-SNAPSHOT, C:\JenkinsTryOut\jenkins2-course-spring-boot\spring-boot-dependencies\pom.xml, line 2058, column 16 -> [Help 2]
[ERROR]     'dependencies.dependency.version' for org.springframework:spring-websocket:jar is missing. @ line 46, column 15
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildingException
[ERROR] [Help 2] http://cwiki.apache.org/confluence/display/MAVEN/UnresolvableModelException

java версия:

java version "11.0.1" 2018-10-16 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.1+13-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.1+13-LTS, mixed mode)

версия maven:

Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: C:\ProgramData\chocolatey\lib\maven\apache-maven-3.6.3\bin\..
Java version: 11.0.1, vendor: Oracle Corporation, runtime: C:\Program Files\Java\jdk-11.0.1
Default locale: en_GB, platform encoding: Cp1252
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"

Ответы [ 3 ]

5 голосов
/ 03 февраля 2020

Похоже, смесь не читает комментарии и @khmarbaise совет.

в pom. xml он сказал:

        <parent>
                <!-- Your own application should inherit from spring-boot-starter-parent -->
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-samples</artifactId>
                <version>1.4.0.BUILD-SNAPSHOT</version>
        </parent>

поэтому, когда я изменил artifactId на весну -boot-starter-parent, как предложено в комментарии, и обновил версию до 2.2.4.RELEASE, поскольку @khmarbaise предположил, что я получил следующий родительский элемент pom. xml:

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.2.4.RELEASE</version>
    </parent>

и затем скомпилирован с mvn compile Я смог успешно скомпилировать.

0 голосов
/ 03 мая 2020
Файлы

Multiple pom. xml имеют ссылки на версии библиотек BUILD-SNAPSHOT, которые больше не доступны. Следующие шаги сработали для меня: -

  1. Создайте свою учетную запись github
  2. Fork-репозиторий https://github.com/g0t4/jenkins2-course-spring-boot
  3. Клонируйте ваш разветвленный репозиторий в ваш локальный каталог (скажем / user / ponson / jenkins2-course-spring-boot)
  4. Откройте терминал bash и измените текущий каталог на локальный каталог git (/ user / ponson / jenkins2-course-spring) -boot)
  5. Запустите приведенную ниже команду для замены вхождений «1.4.0.BUILD-SNAPSHOT» на «1.4.0.RELEASE» в файлах поиска. xml. имя пом. xml | xargs sed -i 's / 1.4.0.BUILD-SNAPSHOT / 1.4.0.RELEASE / g'
  6. Открыть подпружиненные загрузочные зависимости / pom. xml для редактирования и замены '4.3.2. BUILD-SNAPSHOT 'с' 4.3.2.RELEASE '
  7. Поместите ваши изменения в локальный репозиторий с помощью команды' git add. *
  8. commit ваших изменений (git commit -m ' <> ')
  9. Pu sh ваши изменения в вашем удаленном git хранилище (git pu sh origin). Держите свои учетные данные на github под рукой и введите, когда будет предложено.

Исправления доступны в разветвленном хранилище. Может быть, вы можете использовать его напрямую. https://github.com/PonsonT/jenkins2-course-spring-boot

0 голосов
/ 18 апреля 2020

Я тоже начал смотреть тот же курс и выдал ту же проблему. Ответ, который вы дали, только частично верен. Изменение версии на 2.2.4.RELEASE приведет к появлению множества ошибок при попытке запустить mvn test, поскольку в более поздних выпусках некоторые классы исключаются (например, org.springframework.boot.autoconfigure.PropertyPlaceholderAutoConfiguration). Лучшим решением было бы изменить artifactId на spring-boot-starter-parent, как вы сказали, и версию на 1.4.0.RELEASE, и вы сможете запускать все ваши команды maven без ошибок. Итак, скажем, полный ответ будет:

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.4.0.RELEASE</version>
</parent>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...