2010-09-01 3 views
32

Я только что создал новый проект Maven с использованием архетипа по умолчанию и добавил следующую зависимость к моему файлу POM.java.net maven repo - отсутствует артефакт JMS

<dependencies> 
    <dependency> 
    <groupId>javax.jms</groupId> 
    <artifactId>jms</artifactId> 
    <version>1.1</version> 
    <scope>compile</scope> 
    </dependency> 
</dependencies> 

Понимая, что JAR-файлы Солнца не на Maven центральные из-за проблемы с лицензированием, я добавил следующее Maven репо моей POM (я знаю, что это плохая практика, хотя и что она должна быть добавлена ​​к настройкам .xml)

<repositories> 
    <repository> 
    <id>Repo ID</id> 
    <layout>default</layout> 
    <name>Java.net Maven repo</name> 
    <releases> 
     <enabled>true</enabled> 
    </releases> 
    <url>http://download.java.net/maven/2/</url> 
    </repository> 
</repositories> 

Я по-прежнему вижу эту ошибку в своем файле POM.

«Недостающие артефакт javax.jms: JMS: баночка: 1,1: компилировать»

Кто-нибудь здесь знает, что еще должно быть сделано в дополнение к конфигурации у меня уже есть?

ответ

45

Понимая, что JAR-файлы Солнца не на Maven центрального из-за проблем с лицензированием, я добавил следующее Maven репо моей POM

Да, но http://download.java.net/maven/2/javax/ не имеет Jms артефакт .. .

хорошая новость заключается в том, что хранилище JBoss Nexus действительно есть это:

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

Это сработало. Спасибо Паскаль. – Phanindra

+0

Знаете ли вы, есть ли у какого-либо источника и javadoc jars/poms для JMS? Очевидно, JBoss имеет только двоичный JAR. – HDave

+1

Если после добавления репо возникло сообщение «Нет соединителя для доступа к репозиторию java.net», проблема заключается в том, что вы используете Maven3, который несовместим с репозиториями Maven2. Вы можете либо понизить, либо добавить исключения: http://stackoverflow.com/questions/7894794/maven-failing-to-resolve-recursive-dependencies-with-multiple-repositories – ceiroa

6

Если вы просто хотите JM s артефакт и не хотите, чтобы добавить весь репозиторий, вы можете сделать следующее:

wget https://repository.jboss.org/nexus/content/groups/public/javax/jms/jms/1.1/jms-1.1.jar 
mvn -e install:install-file -Dfile=./jms-1.1.jar -DartifactId=jms -DgroupId=javax.jms -Dversion=1.1 -Dpackaging=jar 
+0

Спасибо. На самом деле это решение решило проблему для меня. Я пытался создать Spring RCP 1.1.0, и он не справился с вышеупомянутой ошибкой. Ваше решение прибило его. Спасибо +1 –

+0

Вам лучше установить пользовательский репозиторий Maven, если вы находитесь в более крупной организации, чтобы ваша сборка была воспроизводимой и вне вашей локальной машины. – OndrejM

Смежные вопросы