Для Fuse ESB или более общих для Apache Karaf серверов на базе вы имеете pax url mvn uri prefix. Это позволяет устанавливать пакеты из mvn-репозиториев. Я предлагаю всегда использовать этот uri вместо файлового. В вашем случае команда будет:
установить МВН: com.helloworld/HelloWorld/1.0.0-SNAPSHOT
Это Ури даже немного меньше, чем один файл на основе. Большим преимуществом является то, что у вас есть полное разрешение mvn. Таким образом, этот выше URL-адрес будет работать для пакетов из вашего локального репозитория maven, а также из центра maven.
Конечно, вы, как правило, не будете разворачивать свои артефакты в центральный центр. Поэтому, если вы хотите использовать это внутри своей компании, вы должны создать хранилище maven, такое как Nexus или Archiva. Затем вы развертываете свой собственный пакет, используя mvn clean deploy в репо вашего предприятия. Конечно, это потребует, чтобы вы правильно настроили ваш pom, но вам все равно понадобится любой крупный проект.
Последний шаг, который необходимо сделать, - это настроить ваш предохранитель ESB/Karaf, чтобы также использовать репо вашего предприятия. Это делается путем добавления repo uri к файлу etc/org.ops4j.pax.url.mvn.cfg.
Конечно, это немного больше работы, чем http-url, предложенный Нилом. Преимущество заключается в том, что это очень хорошо интегрируется с вашим процессом сборки maven, и это сделает ваш пакет mvn uris независимым от местоположения вашего maven-репо. Он также позволит вам смешивать ваши собственные пакеты и пакеты с открытым исходным кодом, когда вы начнете их комбинировать с помощью функций.
Я обновил свой вопрос. Возможно ли запустить пакет за пределами контейнера? –