Проект Maven не может найти зависимости в локальном хранилище - PullRequest
6 голосов
/ 19 февраля 2012

У меня есть настройки проекта maven.

В моем файле POM maven он определен следующим образом:

<?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>
        <groupId>com.myProject</groupId>
        <artifactId>basePOM</artifactId>
        <version>1.0</version>
        <relativePath>../../../shared/common/pom.xml</relativePath>
    </parent>

    <groupId>com.myProject.services</groupId>
    <artifactId>orderservice</artifactId>
    <version>developer</version>
    <packaging>war</packaging>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <version>2.3</version>
                <configuration>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
        </plugins>
    </build>

    <dependencies>
        <!--Internal dependencies-->
        <dependency>
            <groupId>com.myProject.shared</groupId>
            <artifactId>model</artifactId>
        </dependency>
        <dependency>
            <groupId>org.jboss.resteasy</groupId>
            <artifactId>resteasy-jaxrs</artifactId>
        </dependency>

        <dependency>
            <groupId>org.jboss.resteasy</groupId>
            <artifactId>resteasy-spring</artifactId>
        </dependency>
    </dependencies>
</project>

У меня есть родительский POM, который определяет некоторые общие биты:

<?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>

    <name>Base POM</name>
    <groupId>com.myProject</groupId>
    <artifactId>basePOM</artifactId>
    <version>1.0</version>
    <packaging>pom</packaging>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>com.myProject.shared</groupId>
                <artifactId>model</artifactId>
                <version>developer</version>
            </dependency>

            <dependency>
                <groupId>org.jboss.resteasy</groupId>
                <artifactId>resteasy-jaxrs</artifactId>
                <version>1.2.GA</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-simple</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>org.jboss.resteasy</groupId>
                <artifactId>resteasy-spring</artifactId>
                <version>1.2.GA</version>
            </dependency>
        </dependencies>
    </dependencyManagement>
</project>

Когда я запускаю

mvn clean install

Resteasy-jaxrs и resteasy-spring загружаются в мой локальный репозиторий без проблем.

Однако затем выдается сообщение об ошибке:

**[ERROR] Failed to execute goal on project orderservice: Could not resolve dependencies for
 project com.mxyy.services:orderservice:war:developer: Failed to collect dependencies for
[com.mxyy.shared:model:jar:developer (compile), org.jboss.resteasy:resteasy-jaxrs:jar:1.2.
GA (compile), org.jboss.resteasy:resteasy-spring:jar:1.2.GA (compile), org.testng:testng:j
ar:jdk15:5.8 (test)]: Failed to read artifact descriptor for com.mxyy.shared:model:jar:dev
eloper: Failure to find com.mxyy:basePOM:pom:1.0 in http://repo.maven.apache.org/maven2 wa
s cached in the local repository, resolution will not be reattempted until the update inte
rval of central has elapsed or updates are forced -> [Help 1]**

Похоже, что проект не может получить зависимости уже в моем локальном репозитории.

Может кто-нибудь сообщить мне, как я могу решить эту проблему?

Большое спасибо

Дополнительная информация:

Я временно удалил зависимость com.myProject.shared.Теперь сообщение об ошибке становится:

[ERROR] Failed to execute goal on project orderservice: Could not resolve dependencies for project com.mxyy.services:orderservice:war:developer: Faile
d to collect dependencies for [org.jboss.resteasy:resteasy-jaxrs:jar:1.2.GA (compile), org.jboss.resteasy:resteasy-spring:jar:1.2.GA (compile)]: Faile
d to read artifact descriptor for org.scannotation:scannotation:jar:1.0.2: Could not transfer artifact org.scannotation:scannotation:pom:1.0.2 from/to
 jboss (http://repository.jboss.org/maven2): Access denied to: http://repository.jboss.org/maven2/org/scannotation/scannotation/1.0.2/scannotation-1.0
.2.pom, ReasonPhrase:Forbidden. -> [Help 1]

Ответы [ 4 ]

12 голосов
/ 20 февраля 2012

Ну, похоже, доступ запрещен.

Вам необходимо использовать правильный путь к хранилищу JBoss: https://repository.jboss.org/nexus/content/groups/public-jboss/

Вот артефакт, который вам нужен: https://repository.jboss.org/nexus/content/groups/public-jboss/org/scannotation/scannotation/

Итак, укажите в своем POM:

    <repository>
        <id>JBoss</id>
        <name>JBoss</name>
        <url>https://repository.jboss.org/nexus/content/groups/public-jboss/</url>
    </repository> 

в списке репозиториев

6 голосов
/ 19 февраля 2012

mvn clean install ваш model проект первый .Это установит его артефакты в ваше локальное хранилище, где ваша целевая сборка сможет их найти.

Редактировать:

Если это по-прежнему не помогает, используйте переключатель -X, чтобы отобразить больше ошибок / отладокинформация:

mvn -X clean install
0 голосов
/ 14 августа 2014

дважды проверьте объявление зависимостей (artifactId и groupId), это может быть просто опечатка;)

0 голосов
/ 19 февраля 2012

Просто глядя на ваш вывод ошибок (и я предполагаю, что вы не вводили его вручную), кажется, вы ошиблись при вводе идентификатора группы из myProject в mxProject.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...