未下载Maven Managed Jars

时间:2016-08-16 17:50:27

标签: maven jar pom.xml

我遇到的问题是我在POM.xml文件中指定的JAR文件没有被下载/导入到我的项目中。我知道这是由于我公司内部实施的网络限制而发生的。

以下是我目前需要的JAR文件的一些示例:

<dependency>
  <groupId>javax.servlet</groupId>
  <artifactId>servlet-api</artifactId>
  <version>2.5</version>
  <scope>provided</scope>
</dependency>
<dependency>
  <groupId>com.enterprisedt</groupId>
  <artifactId>edtFTPj</artifactId>
  <version>1.5.3</version>
  <scope>compile</scope>
</dependency>
<dependency>
  <groupId>xerces</groupId>
  <artifactId>xercesImpl</artifactId>
  <version>2.8.0</version>
  <scope>compile</scope>
</dependency>

我希望与网络管理员合作,了解并纠正阻止自动Maven管理这些(和其他)Jar文件(依赖项)的限制。

我的问题是......如何向我的管理员指定从哪里下载这些依赖项?是否有使用我的依赖描述符构建的URL,尝试联系以尝试从中获取Jar文件?

为什么我能够使用我的浏览器下载Jar文件,因为Maven Managed依赖下载(通过我的IDE,SpringSource Tool Suite)似乎被阻止了?

我不太了解Maven环境,以帮助我的网络管理员帮助我。

谢谢!

编辑08/23/2016:

我可以使用settings.xml文件告诉IDE我们的代理服务器。我仍然无法解决我的依赖关系。从我的等式中我仍然缺少的是我需要提供一份证书&#39;到我的代理服务器,它打开门#39;为了我。我们已经在我们的网络上安装了此功能,以便我时不时地登录&#39;到我们的网络,以允许浏览器工作。当我登录时,我正在做的是获得有效的证书。我可以看到此证书是在我的“钥匙串访问”中管理的。当我在我的mac工作站上查找它时。

所以这就是问题......有没有办法告诉IDE证书的位置以及如何使用它?

我很感激帮助!

斯科特

1 个答案:

答案 0 :(得分:0)

因为您可能在代理之后,并且浏览器可能配置为在代理后面工作,而Maven则不然。

要定义代理,您必须在$ M2_HOME / conf / settings.xml中配置代理:

通常是这样的:

<proxies>
  <proxy>
  <id>optional</id>
  <active>true</active>
  <protocol>http</protocol>
  <username>mkyong</username>
  <password>password</password>
  <host>proxy.host.com</host>
  <port>1234</port>
  <nonProxyHosts>local.net|some.host.com</nonProxyHosts>
</proxy>

现在关于存储库。默认情况下,Maven使用名为 repo1 的远程存储库,但有时您需要定义自己的存储库(同样,通常这在settings.xml文件中完成)

通常组织维护具有一些UI的代理并为第三方提供缓存。像 Nexus Artifactory 这样的项目提供了像这样的存储库管理。因此,通常安装其中一个,然后配置本地Maven分发以对该管理器起作用。