如何为Apache Karaf设置代理

时间:2012-03-29 09:19:22

标签: maven proxy apache-karaf

简单的一个但无法在谷歌上找到任何可靠的东西。我正在经营卡拉夫,我在代理人后面。我需要通过执行以下命令向容器添加一些功能:

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

当我这样做时,我得到以下异常:

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.

这似乎是代理身份验证问题。请注意我已经向Maven添加了代理信息,我可以在Maven中下载依赖项。我怀疑我需要将一些信息如http.proxyName或http.Proxyxxx添加到Karaf安装的etc目录中的一个文件中。

有任何想法吗?

更新: 我在org.ops4j.pax.url.mvn.cfg中找到了一个设置

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

我已取消注释,但我仍然无法进行身份验证。所以我怀疑我需要在某个地方设置我的maven主文件夹。

更新2: 好的非常简单:

在您的Apache karaf文件夹中有一个etc文件夹。编辑org.ops4j.pax.url.mvn.cfg文件。您需要执行两个步骤才能工作。

  • 将karaf指向您的maven安装:在cfg文件中找到以下字符串org.ops4j.pax.url.mvn.settings取消注释并添加您的maven主路径,即org.ops4j.pax.url.mvn.settings = /maven/conf/settings.xml
  • 告诉karaf使用maven代理设置:在cfg文件中找到以下字符串org.ops4j.pax.url.mvn.proxySupport取消注释,如果需要,则将其设置为true,即org.ops4j.pax.url。 mvn.proxySupport =真

我重启了Karaf,我现在可以下载/安装功能了。我希望有一天能帮到某人。

2 个答案:

答案 0 :(得分:9)

因此,如果您按照我上面的帖子进行操作,您将看到通过代理使Karaf工作的两个主要步骤。我不确定是否还有更多内容,所以我愿意听取其他答案。但简而言之,编辑org.ops4j.pax.url.mvn.cfg文件以指向您的maven安装和maven代理设置。

答案 1 :(得分:4)

如果本地maven实例不可用,以下配置将有所帮助:

Java代理设置将解决此问题:

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

就我而言,我正在使用Karaf-Wrapper(http://karaf.apache.org/manual/latest-2.3.x/users-guide/wrapper.html)并在etc / KARAF-wrapper.conf中添加以下设置!!

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

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

注意:使用此选项,Web服务也通过代理公开,因此如果您想避免它,一旦达到目的,您将不得不关闭代理。