如何将代理 VM 参数添加到 IntelliJ IDEA 中的所有 Maven 调用

How to add proxy VM params to all maven calls in IntelliJ IDEA

我的 IntelliJ IDEA 15 只能使用代理访问互联网。

因此,我可以配置 Maven->Importing 和 Maven->Runner 设置以包含

-DproxyXXXX=YYYY

虚拟机选项。这适用于我从 IDE

发起的所有 Maven 目标

但是:当我从 archetype 创建一个新的 Maven 项目时,IDEA 似乎没有将那些 VM 选项添加到应该设置的 Maven 调用中根据原型建立项目。

我的问题是:如何为所有项目配置 IntelliJ IDEA 15,以便它始终添加这些 VM 选项?

JJF的回答无效

澄清一下:这就是 IntelliJ IDEA 对具有 webapp 原型的新项目的 Maven 输出:

"C:\Program Files\Java\jdk1.7.0_79\bin\java" "-Dmaven.home=C:\Program Files
(x86)\JetBrains\IntelliJ IDEA 15.0.3\plugins\maven\lib\maven3" 
"-Dclassworlds.conf=C:\Program Files (x86)\JetBrains\IntelliJ IDEA
15.0.3\plugins\maven\lib\maven3\bin\m2.conf" -Dfile.encoding=UTF-8
-classpath "C:\Program Files (x86)\JetBrains\IntelliJ IDEA
15.0.3\plugins\maven\lib\maven3\boot\plexus-classworlds-2.4.jar"
org.codehaus.classworlds.Launcher -Didea.version=15.0.3
-DinteractiveMode=false -DgroupId=test3 -DartifactId=test3 -Dversion=1.0-
SNAPSHOT -DarchetypeGroupId=org.apache.maven.archetypes
-DarchetypeArtifactId=maven-archetype-webapp -DarchetypeVersion=RELEASE
org.apache.maven.plugins:maven-archetype-plugin:RELEASE:generate

这应该是自动添加的:

-DproxySet=true -DproxyHost=xxxxxxxxxxxxxxx -DproxyPort=8080

转到文件|设置|构建、执行、部署|构建工具|Maven|Runner。该对话框中有一个部分允许您定义属性。我在那里定义了一个测试 属性 并确认 IJ 在我生成新的 Maven 项目时将其添加到 Maven 命令行。

我找到了解决方案

只要您有包含代理部分的 settings.xml(通常在您的 .m2 文件夹中),您就不需要在 IntelliJ 中进行任何 Maven 设置:

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
  ...
  <proxies>
    <proxy>
      <id>optional</id>
      <active>true</active>
      <protocol>http</protocol>
      <host>xxxxxxxxxxxxxxxxxxxxxx</host>
      <port>8080</port>
    </proxy>
  </proxies>          
  ...
</settings>