14

简单的一个,但在谷歌上找不到任何可靠的东西。我正在运行 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 中下载依赖项。我怀疑我需要在 Karaf 安装的 etc 目录中的某个文件中添加一些信息,例如 http.proxyName 或 http.Proxyxxx。

有什么想法吗?

更新:我在 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,现在可以下载/安装功能。我希望有一天这对某人有所帮助。

4

2 回答 2

9

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

于 2012-03-29T18:08:27.883 回答
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 服务也通过代理公开,因此如果您想避免它,一旦达到目的,您将不得不关闭代理。

于 2014-07-18T11:52:05.280 回答