How to override jetty.xml with jetty.port

31,218

Solution 1

UPDATE 1: did work. Don't know why but I tried it with the host also as SystemProperty and it worked. Then I removed host and worked also.

So final fix working jetty.xml connector conf:

<Call name="addConnector">
  <Arg>
      <New class="org.eclipse.jetty.server.nio.SelectChannelConnector">
        <Set name="host"><SystemProperty name="jetty.host" /></Set>
        <Set name="port"><SystemProperty name="jetty.port" default="8080"/></Set>
        <Set name="maxIdleTime">300000</Set>
        <Set name="Acceptors">4</Set>
        <Set name="statsOn">false</Set>
        <Set name="confidentialPort">8443</Set>
    <Set name="lowResourcesConnections">20000</Set>
    <Set name="lowResourcesMaxIdleTime">5000</Set>
      </New>
  </Arg>
</Call>

Solution 2

I had the same problem. Fix:

In the properties section of the pom, define jetty.port:

<properties>
    <jetty.port>8888</jetty.port>
            ....
</properties>

In the plugin configuration:

<connectors>
    <connector implementation="org.eclipse.jetty.server.nio.SelectChannelConnector">
        <maxIdleTime>3600000</maxIdleTime>
        <port>${jetty.port}</port>
    </connector>

This enables to override the port on command line with

mvn -D jetty.port=9999 jetty:run
Share:
31,218
Gonzalo
Author by

Gonzalo

Updated on July 09, 2022

Comments

  • Gonzalo
    Gonzalo almost 2 years

    I'm using maven-jetty-plugin and trying to override my jetty.xml setting with the -Djetty.port=8090 but it's not working. Only when I remove the connector part from the jetty.xml file I get the port to be 8090.

    So:

     mvn jetty:run -Djetty.port=8090
    

    With the connector starts in port 8080

    Without the connector starts in port 8090

    Problem is I need to configure acceptors, stats and other stuff. I tried removing only the port from the connector but it didn't work.

    I'm using:

    JAVA 1.7_05
    MAVEN 3.0.4
    Jetty 8.1.4
    Linux Ubuntu 12.04 64bits
    

    Here's my pom.xml plugin configuration:

    <plugin>
                <groupId>org.mortbay.jetty</groupId>
                <artifactId>jetty-maven-plugin</artifactId>
                <version>8.1.4.v20120524</version>
                <configuration>
                    <stopKey>foo</stopKey>
                    <stopPort>9990</stopPort>
                    <jettyXml>src/main/webapp/WEB-INF/jetty.xml</jettyXml>
                </configuration>
                <executions>
                    <execution>
                        <id>start-jetty</id>
                        <!-- <phase>pre-integration-test</phase> -->
                        <goals>
                            <goal>run</goal>
                        </goals>
                        <configuration>
                            <scanIntervalSeconds>0</scanIntervalSeconds>
                        </configuration>
                    </execution>
                    <execution>
                        <id>stop-jetty</id>
                        <!-- <phase>post-integration-test</phase> -->
                        <goals>
                            <goal>stop</goal>
                        </goals>
                    </execution>
                </executions>
    </plugin>
    

    Jetty.xml connector conf:

    <Call name="addConnector">
      <Arg>
          <New class="org.eclipse.jetty.server.nio.SelectChannelConnector">
            <Set name="host"><Property name="jetty.host" /></Set>
            <Set name="port"><Property name="jetty.port" default="8080"/></Set>
            <Set name="maxIdleTime">300000</Set>
            <Set name="Acceptors">4</Set>
            <Set name="statsOn">false</Set>
            <Set name="confidentialPort">8443</Set>
        <Set name="lowResourcesConnections">20000</Set>
        <Set name="lowResourcesMaxIdleTime">5000</Set>
          </New>
      </Arg>
    </Call>
    

    Thanks in advance!

    UPDATE 1: Also tried using SystemProperty instead of Property in the jetty.xml. Did not work

  • Cong De Peng
    Cong De Peng over 10 years
    agree. config port at POM is clear and straight-forward
  • MiB
    MiB over 10 years
    This way didn't work with Jetty 9 for me. The set port isn't respected. System property did work. See other comment.
  • CorayThan
    CorayThan about 10 years
    Yeah, I can't believe they took that out from Jetty 9. Looks like it's time to downgrade!
  • Dave Jarvis
    Dave Jarvis over 9 years