Java 我的工作场所&x27;s的代理阻止我使用Maven

Java 我的工作场所&x27;s的代理阻止我使用Maven,java,spring,maven,spring-mvc,proxy,Java,Spring,Maven,Spring Mvc,Proxy,我在公共部门工作,所以我的工作场所严格控制互联网接入。我已尝试配置M2Eclipse读取的settings.xml文件,但无效。在我的例子中,这可能是一个简单的用户错误,但无论如何,我想探索其他选项,以防它不是 我正在考虑安装一个本地Nexus存储库,因为我可以绕过一些程序的代理(在本例中不是Maven),但到目前为止,我甚至还没有管理员权限来尝试该解决方案 我想我也可以在自己的VPS上初始化项目,将项目推送到git存储库,然后在我的工作机器上拉入项目 我是否应该放弃并手动将所需的JAR添加到项

我在公共部门工作,所以我的工作场所严格控制互联网接入。我已尝试配置M2Eclipse读取的settings.xml文件,但无效。在我的例子中,这可能是一个简单的用户错误,但无论如何,我想探索其他选项,以防它不是

我正在考虑安装一个本地Nexus存储库,因为我可以绕过一些程序的代理(在本例中不是Maven),但到目前为止,我甚至还没有管理员权限来尝试该解决方案

我想我也可以在自己的VPS上初始化项目,将项目推送到git存储库,然后在我的工作机器上拉入项目

我是否应该放弃并手动将所需的JAR添加到项目构建路径中

任何帮助都将不胜感激

咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳咳


.
.
示例代理
:


archiva.localhost
用户代理
内部构建系统/1.0
例如,如果您的组织只允许通过代理使用某个版本的internet explorer,那么您就是这样撒谎并声称maven就是该版本的internet explorer,这样就不会打扰您了

如果这不起作用,因为它们从根本上阻止了您需要从中提取罐子的站点,那么您甚至可以得到欺骗;是的,它涉及一个VPS。一种选择是如您所说使用git

另一个选择(IT人员讨厌这样做,这样做的风险由您自己承担,因为无论您的本地策略是什么,这都可能违反它)是将您的VPS设置为HTTP代理。您可以在VPS上设置类似Squid的东西,然后设置一个从您的工作机器到VPS的连接,该VPS连接到您的HTTP代理。因此,这样做的方式是,您的工作机器将使用作为本地端口的HTTP代理(比如localhost:8080)。该本地端口将通过某个网络可接受端口(例如80)连接到您的VPS的SSH隧道。一旦流量到达那里,您的VPS就是您的HTTP代理,您组织的代理已被绕过


如果您的IT部门设置了深度数据包检查,或者禁止VP的IP范围,或者其他组合,那么这将失败。但底线是,如果他们允许你传递网络数据包,他们可以做各种事情让你的生活变得困难,但如果你聪明,他们可能无法阻止你设置自己的代理并绕过他们的大部分/所有基础设施。

/.m2
文件夹下创建settings.xml文件。(settings.xml文件永远不会在此位置自动创建,因此您可以将此文件从
/conf/
文件夹复制到
/.m2
并覆盖)

现在在
/.m2/settings.xml
编辑此文件,并在
settings.xml
文件中取消对以下移植的注释,并使用代理设置进行配置

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

可选择的
真的
http
代理用户
proxypass
proxy.host.net
80
local.net | some.host.com


现在重新运行maven作业。

我的。。。天哪。伟大的力量带来伟大的责任,年轻的帕德万。
<server>
  <id>archiva.localhost</id>
  <configuration>
    <httpHeaders>
      <property>
        <name>User-Agent</name>
        <value>Internal-Build-System/1.0</value>
      </property>
    </httpHeaders>
  </configuration>
</server>
<proxies>
<proxy>
  <id>optional</id>
  <active>true</active>
  <protocol>http</protocol>
  <username>proxyuser</username>
  <password>proxypass</password>
  <host>proxy.host.net</host>
  <port>80</port>
  <nonProxyHosts>local.net|some.host.com</nonProxyHosts>
</proxy>