Возможности Karaf: синтаксис addurl

Я видел два разных синтаксиса в Karaf для добавления репо, например,

features:addurl mvn:org.apache.camel/camel-example-osgi/2.10.0/
xml/features
features:addurl mvn:org.apache.camel/camel-example-osgi/2.10.0/
xml

Может кто-нибудь объяснить разницу между 2? Я полагаю, что они оба ссылаются на файл features, но они находятся в разных местах?


person Bob    schedule 16.07.2013    source источник


Ответы (1)


функции: addurl mvn: org.apache.camel/camel-example-osgi/2.10.0/xml

На самом деле не работает для меня. НО я думаю можно сломать происходящее.

mvn:org.apache.camel/camel-example-osgi/2.10.0 — это URL-адрес maven с неявным «типом» и «классификатором». Тип — «jar», а классификатор по умолчанию пуст. Поэтому он разрешается в файл с именем camel-example-osgi-2.10.0.jar. (artifactId-версия[-классификатор].тип)

В таком случае:

mvn:org.apache.camel/camel-example-osgi/2.10.0/xml — это тип «xml», а не классификатор. Это разрешается в файл с именем camel-example-osgi-2.10.0.xml, которого не существует.

mvn:org.apache.camel/camel-example-osgi/2.10.0/xml/features — это тип «xml» и классификатор «функций». Затем это разрешается в файл с именем camel-example-osgi-2.10.0-features.xml. Мы можем посмотреть на сервере и увидеть, что этот файл существует: http://repo1.maven.org/maven2/org/apache/camel/camel-example-osgi/2.10.0/

Я не могу найти для него хорошей документации, но «классификатор» добавляет -$classifier к имени файла. Вот как некоторые артефакты maven имеют классификатор -jdkN и -jdkM или -jdbc4 или -jdbc3 на них.

Ссылки: https://ops4j1.jira.com/wiki/display/paxurl/Mvn+Protocol http://maven.apache.org/pom.html#POM_Relationships

person Sheena Artrip    schedule 17.07.2013
comment
Это правильно. Разница просто в классификаторе. Оба варианта возможны. В основном это зависит от парня, который пишет pom для файла функций. - person Christian Schneider; 18.07.2013