Joh*_*ohn 8 maven-2 jetty pom.xml
我正在开发集成测试套件,我有一个问题要问你.
我的父pom定义了jetty插件的使用目标:run-war.我需要通过命令行使jetty侦听的端口可更改.这可以通过传递-Djetty.port = 8099来实现.
在子项目中,我需要使用此端口号来配置端点,以便我需要在由jetty托管的服务上运行的一些SOAP测试.
如果我在我的子pom中使用$ {jetty.port}在端点配置中这可以正常工作,并且只有在我调用maven时显式传递-Djetty.port.
在我的孩子pom:
<endpoint>http://127.0.0.1:${jetty.port}/{artifactId}<endpoint>
Run Code Online (Sandbox Code Playgroud)
我需要使用8080填充jetty.port,如果未明确传递-Djetty.port,则默认为jetty,如果指定了命令行参数,仍然会捕获任何其他端口值.
使用属性部分,并添加具有默认值的jetty.port属性:
<properties>
<jetty.port>8080</jetty.port>
</properties>
Run Code Online (Sandbox Code Playgroud)
配置maven jetty插件:
<plugins>
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<version>6.1H.14.1</version>
<configuration>
<connectors>
<connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
<port>8085</port>
<maxIdleTime>60000</maxIdleTime>
</connector>
</connectors>
</configuration>
</plugin>
</plugins>
Run Code Online (Sandbox Code Playgroud)
如果您想使用较新版本的jetty插件,请使用以下配置:
来自http://www.eclipse.org/jetty/documentation/current/jetty-maven-plugin.html:
您可以在标准的jetty xml配置文件中配置连接器,并将其位置放入jettyXml参数中.请注意,由于jetty-9.0不再可以直接在pom.xml中配置https连接器:您需要使用jetty xml配置文件来执行此操作.
就像是:
<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>9.0.5.v20130815</version>
<configuration>
<jettyXml>src/main/resources/jetty.xml</jettyXml>
<webApp>
<contextPath>/yourCtxPath</contextPath>
</webApp>
</configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)
使用jetty.xml文件内容可以解决问题:
<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">
<Configure id="Server" class="org.eclipse.jetty.server.Server">
<Call id="httpsConnector" name="addConnector">
<Arg>
<New class="org.eclipse.jetty.server.ServerConnector">
<Arg name="server"><Ref refid="Server" /></Arg>
<Set name="host"><Property name="jetty.host" /></Set>
<Set name="port"><Property name="jetty.port" default="8085" /></Set>
<Set name="idleTimeout">30000</Set>
</New>
</Arg>
</Call>
</Configure>
Run Code Online (Sandbox Code Playgroud)
请参阅'mvn jetty:run'后的日志,最后应显示如下内容:
2013-09-05 09:49:05.047:INFO:oejs.ServerConnector:main:已启动ServerConnector@a6e9cb4{HTTP/1.1}{0.0. 0.0:8085 }
您需要在此版本的插件中使用maven 3和java 7.
归档时间: |
|
查看次数: |
10521 次 |
最近记录: |