How to set server port with org.eclipse.jetty:jetty-maven-plugin?

MavenJetty

Maven Problem Overview


I am currently setting the port via a jetty.xml file and I've been trying to figure out from the new documentation how to actually define an httpConnector through the Maven plugin's configuration. The docs on Eclipse's site seem a bit vague on it and I've been trying to figure this out for a while, thus ending up using a jetty.xml. I'd like to find out the proper way to do this now.

I'm currently using org.eclipse.jetty:jetty-maven-plugin:9.2.1.v20140609.

Maven Solutions


Solution 1 - Maven

The jetty-maven-plugin documentation (for jetty 11 at the time of this answer - update) states that you can either configure the httpConnector element in the pom.xml file to setup the ServerConnector preferences or use the jetty.http.port system property to change the port or use the Jetty descriptor i.e. the way you are doing it actually.

Then you have several options:

(Java) System Property:

Change the port when just running your application through the mvn command:

mvn jetty:run -Djetty.http.port=9999
(Maven) Project Property:
  1. Set the property inside your project pom.xml descriptor file:

     <properties>
       <jetty.http.port>9999</jetty.http.port>
     </properties>
    
  2. Then just run your application through the Jetty plugin and the port will be picked up automatically:

    mvn jetty:run

(Maven) Jetty Plugin Configuration:

Set the port in your plugin declaration inside the pom.xml file:

<build>
  <plugins>
    <plugin>
      <groupId>org.eclipse.jetty</groupId>
      <artifactId>jetty-maven-plugin</artifactId>
      <version>9.2.1.v20140609</version>
      <configuration>
        <httpConnector>
          <!--host>localhost</host-->
          <port>9999</port>
        </httpConnector>
      </configuration>
    </plugin>
  </plugins>
</build>

EDIT

In new versions of jetty-maven-plugin, jetty.http.port is the default port property and jetty.port won't work as in previous plugin versions.

Solution 2 - Maven

Run following command: mvn jetty:run -Djetty.port=9999

I guess mvn jetty:run -Djetty.http.port=9999 is deprecated. It didn't work for me.

Solution 3 - Maven

You may configure the port through the pom.xml:

<build>
    <plugins>
        <plugin>
			<groupId>org.eclipse.jetty</groupId>
			<artifactId>jetty-maven-plugin</artifactId>
			<version>9.2.1.v20140609</version>
			<configuration>
				<httpConnector>
					<port>9999</port>
				</httpConnector>
			</configuration>
		</plugin>
    </plugins>
</build>

Solution 4 - Maven

This works for me, confirmed as I am currently debugging the server in my chrome on port 8088.

 mvn jetty:run -Dhttp.port=8088

Solution 5 - Maven

By Default Jetty runs on 8080 port, if any application like oracle DB using that port in your system then Jetty server will not start and gives some BIND exception. to overcome this if your project is maven project then in pom.xml file use below code, then it works perfectly(here i am using port 8888 which is free in my system)

<!-- The Jetty plugin allows us to easily test the development build by
				running jetty:run on the command line. -->
			<plugin>
				<groupId>org.eclipse.jetty</groupId>
				<artifactId>jetty-maven-plugin</artifactId>
				<version>${jetty.plugin.version}</version>
				<configuration>
					<scanIntervalSeconds>2</scanIntervalSeconds>
					 <httpConnector>
          			<host>localhost</host>
         			 <port>8888</port>
       				 </httpConnector>
				</configuration>
			</plugin>

Solution 6 - Maven

<connectors>
	<connector>
    	<port>9999</port>
    </connector>
</connectors>


in pom.xml file

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestioncarlspringView Question on Stackoverflow
Solution 1 - MaventmarwenView Answer on Stackoverflow
Solution 2 - MavenVivek GargView Answer on Stackoverflow
Solution 3 - MavenBenjaminView Answer on Stackoverflow
Solution 4 - MavenlukeDevBEView Answer on Stackoverflow
Solution 5 - MavenSatya SinghView Answer on Stackoverflow
Solution 6 - MavensonuView Answer on Stackoverflow