如何为Apache Karaf设置代理

Nam*_*ian 13 proxy maven apache-karaf

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

features:addurl mvn:org.apache.camel.karaf/apache-camel/2.9.0/xml/features
Run Code Online (Sandbox Code Playgroud)

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

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.
Run Code Online (Sandbox Code Playgroud)

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

有什么想法吗?

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

org.ops4j.pax.url.mvn.proxySupport=true 
Run Code Online (Sandbox Code Playgroud)

我已经取消注释,但我仍然无法进行身份验证.所以我怀疑我需要在某个地方设置我的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,我现在可以下载/安装功能了.我希望有一天能帮助别人.

Nam*_*ian 9

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


San*_*aya 5

如果本地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服务也通过代理公开,因此,如果要避免使用代理,则一旦达到目的,就必须关闭代理。