我在一个squid代理服务器后面遇到了Maven的问题。
我的系统模块依赖于与远程Web服务的外部通信。
我在〜/ .m2 / settings.xml下有我的maven代理配置,但显然,这些信息仅用于依赖项下载。
当我运行'mvn test'时,这些配置不会用于命令行执行调用。这是在控制台上回显的指令:
${JAVA_HOME}/bin/java -jar /tmp/surefirebooter4156656684210940660.jar /tmp/surefire2646147996861949548tmp /tmp/surefire3498083351425809633tmp
有一种方法可以在测试和其他maven方法执行期间将参数传递给JVM吗?
答案 0 :(得分:4)
也许这对你很感兴趣:How do I configure proxy settings for Java。或者,您可以尝试以下启动参数:
-Dhttp.proxyHost=url
-Dhttp.proxyPort=port
-Dhttp.proxyUser=user
-Dhttp.proxyPassword=pass
<强> [编辑] 强>
也可以在MAVEN_OPTS
中设置这些属性。 This post描述了这对测试配置文件的作用。
答案 1 :(得分:1)
要修复pom.xml
上的某些参数,我们可以直接在surefire插件配置上配置-DforkMode=never
。即。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.5</version>
<configuration>
<argLine>-DforkMode=never</argLine>
</configuration>
</plugin>