Maven "Не удалось разрешить зависимости" для openid4java - PullRequest
4 голосов
/ 01 июля 2011

Сводка:
Ошибка запуска mvn war: war с ошибками, в том числе:
"Не удалось разрешить следующие артефакты: org.openid4java: openid4java:jar: 0.9.6 ".

Я бы объяснил это тем фактом, что я нуб Maven, но я вижу, что другие люди опубликовали на веб-сайте openid4java заявление о том, что банок отсутствует из центрального центра Maven для openid4java.

Подробности:
Я пытаюсь набрать скорость с openid4java, запустивпример приложения Simple-OpenID, включенного в последнюю версию openid4java (0.9.6.662).

Согласно Readme «Для этой демонстрации требуется apache Maven2 для сборки».В файле Readme также говорится: «Задача mvn war: war должна создавать файл войны, который можно развернуть, скопировав файл войны».

До сих пор я работал с Ant и Mavent Ant Tasks, ноЯ решил, что укушу пулю сегодня и установлю Maven 3.0.3.Я следовал инструкциям по установке и теперь могу успешно запустить «mvn --version»

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

[ERROR] Failed to execute goal on project simple-openid: Could not resolve dependencies for project org.openid4java:simple-openid:war:0.9.6: The following artifacts could not be resolved: org.openid4java:openid4java:jar:0.9.6, org.openid4java:openid4java-consumer:jar:0.9.6, org.openid4java:openid4java-server:jar:0.9.6, org.openid4java:openid4java-server-JdbcServerAssociationStore:jar:0.9.6, org.openid4java:openid4java-consumer-SampleConsumer:jar:0.9.6, org.openid4java:openid4java-server-SampleServer:jar:0.9.6: Failure to find org.openid4java:openid4java:jar:0.9.6 in http://repo1.maven.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal on project simple-openid: Could not resolve dependencies for project org.openid4java:simple-openid:war:0.9.6: The following artifacts could not be resolved: org.openid4java:openid4java:jar:0.9.6, org.openid4java:openid4java-consumer:jar:0.9.6, org.openid4java:openid4java-server:jar:0.9.6, org.openid4java:openid4java-server-JdbcServerAssociationStore:jar:0.9.6, org.openid4java:openid4java-consumer-SampleConsumer:jar:0.9.6, org.openid4java:openid4java-server-SampleServer:jar:0.9.6: Failure to find org.openid4java:openid4java:jar:0.9.6 in http://repo1.maven.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced
    at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.getDependencies(LifecycleDependencyResolver.java:196)

Caused by: org.apache.maven.project.DependencyResolutionException: Could not resolve dependencies for project org.openid4java:simple-openid:war:0.9.6: The following artifacts could not be resolved: org.openid4java:openid4java:jar:0.9.6, org.openid4java:openid4java-consumer:jar:0.9.6, org.openid4java:openid4java-server:jar:0.9.6, org.openid4java:openid4java-server-JdbcServerAssociationStore:jar:0.9.6, org.openid4java:openid4java-consumer-SampleConsumer:jar:0.9.6, org.openid4java:openid4java-server-SampleServer:jar:0.9.6: Failure 

Caused by: org.sonatype.aether.resolution.DependencyResolutionException: The following artifacts could not be resolved: org.openid4java:openid4java:jar:0.9.6, org.openid4java:openid4java-consumer:jar:0.9.6, org.openid4java:openid4java-server:jar:0.9.6, org.openid4java:openid4java-server-JdbcServerAssociationStore:jar:0.9.6, org.openid4java:openid4java-consumer-SampleConsumer:jar:0.9.6, org.openid4java:openid4java-server-SampleServer:jar:0.9.6: Failure to find org.openid4java:openid4java:jar:0.9.6 in 

Я что-то здесь не так делаю или банки в действительности отсутствуют в репозитории Maven?

Ответы [ 5 ]

4 голосов
/ 03 июля 2011

Мне удалось решить эту проблему, добавив <type>pom</type> в файл pom.xml. Я нашел ответ в группе Google OpenID4Java в этой теме .

Вот что говорит нить в группе Google:

Я имею в виду, вы должны добавить "пом" в зависимости раздел openid4java в вашем pom.xml:

   <dependency>
         <groupId>org.openid4java</groupId>
         <artifactId>openid4java-consumer</artifactId>
         <!--artifactId>openid4java-server</artifactId-->
         <!--artifactId>openid4java-infocard</artifactId-->
         <!--artifactId>openid4java-xri</artifactId-->
         <!--artifactId>openid4java</artifactId-->
         <!--artifactId>openid4java-full</artifactId-->
         <version>0.9.6</version>
         <type>pom</type> <-----------------------This line can not be omitted.
    </dependency>

Тип openid4java-consumer / openid4java-server / .... все это "pom", а не "jar". Файл jar находится в openid4java-nodeps, который зависит от openid4java-consumer / openid4java-server ...

1 голос
/ 21 мая 2012

Еще один способ разрешить зависимость в Grails - добавить репозиторий maven "https://oss.sonatype.org/content/repositories/openid4java/" и указать в качестве артефакта" openid4java-nodeps ".

repositories {
    grailsPlugins()
    grailsHome()
    grailsCentral()
    mavenCentral()      
    mavenRepo "https://oss.sonatype.org/content/repositories/openid4java/"
}

dependencies {
    runtime('mysql:mysql-connector-java:5.1.19',
            'org.apache.httpcomponents:httpclient:4.2',
            'org.openid4java:openid4java-nodeps:0.9.6') { excludes "xml-apis" }
}
1 голос
/ 12 апреля 2012

Это то, что я сделал, чтобы он скомпилировался и запустился:

  1. Перейдите в центральный репозиторий m2 или maven,
  2. org-> openID4java-> openID4java-> 0.9.6 и отредактируйте файл openid4java-0.9.6.pom и добавьте pom к зависимостям, у которых нет jar
  3. org-> openID4java-> openid4java-consumer-SampleConsumer-> 0.9.6 и отредактируйте openid4java-consumer-SampleConsumer-0.9.6.pom и добавьте pom к артефакту openId-consumer
  4. org-> openID4java-> openid4java-openid4java-server-SampleServer-> 0.9.6 и отредактируйте openid4java-server-SampleServer-0.9.6.pom и добавьте pom к артефакту openId-сервера
  5. org-> openID4java-> openid4java-server-JdbcServerAssociationStore-0.9.6, откройте файл pom и добавьте pom в openID-серверный артефакт.

слияние Eclipse, затем щелкните правой кнопкой мыши проект и maven и обновите зависимость, которую вы готовы использовать, для пользователя инструмента maven, скомпилируйте напрямую, и вы готовы выполнить

1 голос
/ 01 июля 2011

Причина: org.sonatype.aether.resolution.DependencyResolutionException: не удалось разрешить следующие артефакты: org.openid4java: openid4java: jar: 0.9.6, org.openid4java: openid4java-consumer: jar: 0.9.6, org.openid4java: openid4java-сервер: jar: 0.9.6, org.openid4java: openid4java-server-JdbcServerAssociationStore: jar: 0.9.6, org.openid4java: openid4java-consumer-SampleConsumer: jar: 0.9.6 или 0.9.6, openid4java-server-SampleServer: jar: 0.9.6: ошибка при поиске org.openid4java: openid4java: jar: 0.9.6 в

Вам нужно либо добавить <repository> в ваш проект, содержащий эти артефакты, либо установить их в локальный репозиторий.

Попробуйте https://oss.sonatype.org/content/repositories/openid4java/ (найдено на MavenHowTo )

0 голосов
/ 08 августа 2012

Не удалось ли установить пакет maven для каждой зависимости openid4java-xxx, как указано ниже:

  1. запустите задачу сборки муравья в вашей директории openid4java-0.9.6

  2. затем выполните:

    mvn install:install-file -DgroupId=org.openid4java -DartifactId=openid4java-consumer -Dversion=0.9.6 -Dpackaging=jar -Dfile=<<change_this_path_to>>build\openid4java.jar
    
    mvn install:install-file -DgroupId=org.openid4java -DartifactId=openid4java-server -Dversion=0.9.6 -Dpackaging=jar -Dfile=<<change_this_path_to>>build\openid4java.jar
    
    mvn install:install-file -DgroupId=org.openid4java -DartifactId=openid4java-server-JdbcServerAssociationStore -Dversion=0.9.6 -Dpackaging=jar -Dfile=<<change_this_path_to>>build\openid4java.jar
    
    mvn install:install-file -DgroupId=org.openid4java -DartifactId=openid4java-consumer-SampleConsumer -Dversion=0.9.6 -Dpackaging=jar -Dfile=<<change_this_path_to>>build\openid4java.jar
    
    mvn install:install-file -DgroupId=org.openid4java -DartifactId=openid4java-server-SampleServer -Dversion=0.9.6 -Dpackaging=jar -Dfile=<<change_this_path_to>>build\openid4java.jar
    

И это должно сделать это!

...