当maven使用gwt-maven-plugin开始测试时,它启动服务器,并使用错误的ip,在我的情况下
Starting http://10.0.14.67:60281/com.something.GwtTest.JUnit/junit-standards.html?gwt.codesvr=10.0.14.67:60278 on browser FF17
并获取访问被拒绝错误。我希望它在127.0.0.1上开始测试,但不知道如何。但是,如果我运行gwt插件,而不是gwt:test但gwt:运行它从127.0.0.1开始,一切正常! 我在maven插件中有这样的配置
<failOnError>true</failOnError>
<runTarget>http://127.0.0.1:8080/</runTarget>
<hostedWebapp>${project.build.directory}/${project.build.finalName}-gwt</hostedWebapp>
<noServer>true</noServer>
<includes>**/*TestSuiteGWT.java</includes>
<mode>htmlunit</mode>
那我怎么能让它在相同的127.0.0.1上开始测试?
答案 0 :(得分:2)
测试使用InetAddress.getLocalHost()
.getHostAddress()
,因此除了更改InetAddress.getLocalHost()
的JVM行为外,无法更改它。
JUnitShell
的行为是允许remote testing而无需重新配置(与需要-bindAddress
的DevMode相反)。
解决方案是创建一个自定义&#34;运行风格&#34;继承com.google.gwt.junit.RunStyleHtmlUnit
并覆盖getLocalHostName()
以返回127.0.0.1
,并通过<mode>name.of.your.CustomRunStyleHtmlUnit</mode>
使用它。