@@ -139,6 +139,9 @@ public class Setup extends AbstractServerTask {
139139 @ Parameter (property = "debug" )
140140 private String debug ;
141141
142+ @ Parameter (property = "serverPort" )
143+ private String serverPort ;
144+
142145 @ Parameter (defaultValue = "false" , property = "run" )
143146 private boolean run ;
144147
@@ -367,18 +370,20 @@ private void wipeDatabase(Server server) throws MojoExecutionException {
367370 }
368371
369372 private void setServerPort (Server server ) throws MojoExecutionException {
370- String message = "What port would you like your server to use?" ;
371- String port = wizard .promptForValueIfMissingWithDefault (
372- message ,
373- server .getParam ("tomcat.port" ),
374- "port number" ,
375- String .valueOf (Setup .DEFAULT_PORT ));
376- if (!StringUtils .isNumeric (port ) || !this .serverHelper .isPort (Integer .parseInt (port ))) {
377- wizard .showMessage ("Port must be numeric and less or equal 65535." );
378- this .setServerPort (server );
379- return ;
380- }
381- server .setPort (port );
373+ if (StringUtils .isBlank (serverPort )) {
374+ String message = "What port (-D%s) would you like your server to use?" ;
375+ serverPort = wizard .promptForValueIfMissingWithDefault (
376+ message ,
377+ server .getParam ("tomcat.port" ),
378+ "serverPort" ,
379+ String .valueOf (Setup .DEFAULT_PORT ));
380+ if (!StringUtils .isNumeric (serverPort ) || !this .serverHelper .isPort (Integer .parseInt (serverPort ))) {
381+ wizard .showMessage ("Port must be numeric and less or equal 65535." );
382+ this .setServerPort (server );
383+ return ;
384+ }
385+ server .setPort (serverPort );
386+ }
382387 }
383388
384389 private void setDebugPort (Server server ) throws MojoExecutionException {
0 commit comments