Не удалось разрешить следующие артефакты: javax.jms: jms: jar: 1.1
Я пытаюсь скомпилировать проект maven, но систематически получаю следующее сообщение об ошибке:
[ERROR]Failed to execute goal on project ...:
Could not resolve dependencies for project ...:war:1.0.0:
The following artifacts could not be resolved: javax.jms:jms:jar:1.1,
com.sun.jdmk:jmxtools:jar:1.2.1, com.sun.jmx:jmxri:jar:1.2.1:
Failure to find javax.jms:jms:jar:1.1 in http://mirrors.ibiblio.org/maven2/
was cached in the local repository, resolution will not be reattempted until
the update interval of maven2-repository.ibiblio.mirror has elapsed or
updates are forced -> [Help 1]
Я знаю о это сообщение maven о банках Sun, но это не решает проблему.
Есть ли у кого-нибудь решение? Есть ли репозиторий, который я могу указать в моем pom.xml?
Спасибо!
Ответы
Ответ 1
Спасибо за предложения. Я, наконец, нашел решение этой проблемы после прочтения этого. Оказывается, эти зависимости исходили из зависимости от ZooKeeper.
Я изменил свой pom.xml следующим образом и решил проблему:
<dependency>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
<version>3.3.2</version>
<exclusions>
<exclusion>
<groupId>com.sun.jmx</groupId>
<artifactId>jmxri</artifactId>
</exclusion>
<exclusion>
<groupId>com.sun.jdmk</groupId>
<artifactId>jmxtools</artifactId>
</exclusion>
<exclusion>
<groupId>javax.jms</groupId>
<artifactId>jms</artifactId>
</exclusion>
</exclusions>
</dependency>
Ответ 2
Если кто-то все еще хочет использовать jms1.1, добавьте публичный репозиторий jboss и maven найдет его...
project- > зависимости:
<dependencies>
<dependency>
<groupId>javax.jms</groupId>
<artifactId>jms</artifactId>
<version>1.1</version>
</dependency>
project- > репозиториев:
<repositories>
<repository>
<id>repository.jboss.org-public</id>
<name>JBoss.org Maven repository</name>
<url>https://repository.jboss.org/nexus/content/groups/public</url>
</repository>
Работает -
F:\mvn-repo-stuff>mvn verify
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building mvn-repo-stuff 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
Downloading: http://repo1.maven.org/maven2/javax/jms/jms/1.1/jms-1.1.pom
Downloaded: http://repo1.maven.org/maven2/javax/jms/jms/1.1/jms-1.1.pom (677 B at 0.8 KB/sec)
[WARNING] The artifact xml-apis:xml-apis:jar:2.0.2 has been relocated to xml-apis:xml-apis:jar:1.0.b2
Downloading: http://repo1.maven.org/maven2/javax/jms/jms/1.1/jms-1.1.jar
Downloading: https://repository.jboss.org/nexus/content/groups/public/javax/jms/jms/1.1/jms-1.1.jar
Downloaded: https://repository.jboss.org/nexus/content/groups/public/javax/jms/jms/1.1/jms-1.1.jar (26 KB at 8.5 KB/sec)
Ответ 3
Log4 version 1.2.17 автоматически разрешает проблему, так как она имеет отношение к geronimo-jms. Я получил ту же проблему с версией log4j-1.2.15.
Добавлен вопрос вокруг
с использованием 1.2.17 разрешил проблему во время компиляции, но сервер (Karaf) использовал версию 1.2.15, создав конфликт во время выполнения. Таким образом, мне пришлось вернуться к 1.2.15.
JMS и JMX api были доступны для меня во время выполнения, поэтому я не импортировал J2ee api.
что я сделал, я использовал зависимость времени компиляции от 1.2.17, но удалил ее во время выполнения.
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
....
<build>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<instructions>
<Bundle-SymbolicName>${project.groupId}.${project.artifactId}</Bundle-SymbolicName>
<Import-Package>!org.apache.log4j.*,*</Import-Package>
.....
Ответ 4
Другое решение, если вы не хотите изменять свои настройки:
Загрузите jms-1.1.jar из репозитория JBoss, затем:
mvn install:install-file -DgroupId=javax.jms -DartifactId=jms -Dversion=1.1 -Dpackaging=jar -Dfile=jms-1.1.jar
Ответ 5
Попробуйте настроить обновления с помощью опции mvn cpu
:
usage: mvn [options] [<goal(s)>] [<phase(s)>]
Options:
-cpu,--check-plugin-updates Force upToDate check for any
relevant registered plugins
Ответ 6
Проверка репозиториев ibliblio
и java.net
показывает, что jmx связанная банка не присутствует ни в одном. Я думаю, вы должны вручную загрузить jms и установить их локально, как обсуждалось здесь.
Ответ 7
Фактически реальным решением этой проблемы является использование артефакта jms-api-1.1-rev-1.jar, доступного на Maven Central: http://search.maven.org/#artifactdetails%7Cjavax.jms%7Cjms-api%7C1.1-rev-1%7Cjar
Ответ 8
Вы импортируете одну зависимость, и эта зависимость зависит от com.sun.jmx:jmxri:jar:1.2.1
и других, но com.sun.jmx:jmxri:jar:1.2.1
не может быть найдена в центральном репозитории,
поэтому лучше попробовать импортировать другую версию.
Здесь предположим, что ваша зависимость может быть log4j, и вы можете попробовать импортировать log4j:log4j:jar:1.2.13
.
Ответ 9
Не может быть точно такой же проблемой. но есть хорошая статья в той же строке Здесь