문제

Simple one but unable to find anything solid on google. I am running Karaf and I am behind a proxy. I need to add some features to the container by executing the following command:

features:addurl mvn:org.apache.camel.karaf/apache-camel/2.9.0/xml/features

When I do this I get the following exception:

Could not add Feature Repository:
java.lang.RuntimeException: URL [mvn:org.apache.camel.karaf/apache-camel/2.9.0/xml/features] could not be resolved.

This appears to be a proxy authentication issue. Please note I have added proxy information to Maven and I can download dependencies in Maven. I suspect I need to add some information like http.proxyName or http.Proxyxxx to one of the files in the etc directory of the Karaf installation.

Any ideas out there?

UPDATE: I have found a setting in the org.ops4j.pax.url.mvn.cfg which is

org.ops4j.pax.url.mvn.proxySupport=true 

I have uncommented this but I still cant authenticate. So I suspect I need to set my maven home folder somewhere.

UPDATE 2: Ok very simple thing to do:

In your Apache karaf folder there is a etc folder. Edit the org.ops4j.pax.url.mvn.cfg file. You need to perform two steps for it to work.

  • Point karaf to your maven installation: find the following string in your cfg file org.ops4j.pax.url.mvn.settings uncomment it and add your maven home path i.e. org.ops4j.pax.url.mvn.settings= /maven/conf/settings.xml
  • Tell karaf to use the maven proxy settings: find the following string in your cfg file org.ops4j.pax.url.mvn.proxySupport uncomment it and set it to true if needs be i.e. org.ops4j.pax.url.mvn.proxySupport=true

I restarted Karaf and I can now download/install features. I hope this helps someone someday.

도움이 되었습니까?

해결책

So if you follow my post above you will see the two main steps in getting Karaf to work via a proxy. I am not sure if there is anything more to it so I am willing to listen to other answers. But in short edit the org.ops4j.pax.url.mvn.cfg file to point to your maven install and maven proxy settings.

다른 팁

If a local maven instance is not available the below configurations will help :

Java proxy settings will resolve this issue:

-Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=80

In my case, i am using Karaf-Wrapper(http://karaf.apache.org/manual/latest-2.3.x/users-guide/wrapper.html) and adding the below settings in etc/KARAF-wrapper.conf worked!!

wrapper.java.additional.10=-Dhttp.proxyHost=127.0.0.1

wrapper.java.additional.11=-Dhttp.proxyPort=80

Note: With this option the web services are also exposed via proxy, so if you want to avoid it, once the purpose is achieved you will have to turn off the proxy.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top