Enable fork more when devtools is present

This commit improves the run goal to automatically fork the process when
devtools is present and log a warning when fork has been disabled via
configuration since devtools will not work on a non-forked process.

We don't want devtools to kick in for integration tests so the logic has
been placed in `RunMojo` requiring a couple of protected methods to
override.

Closes gh-5137
This commit is contained in:
Stephane Nicoll
2016-08-31 12:10:35 +02:00
parent 7765d31edd
commit ff48a88b91
7 changed files with 174 additions and 27 deletions

View File

@@ -128,7 +128,7 @@ mvn spring-boot:run
By default the application is executed directly from the Maven JVM. If you need to run
in a forked process you can use the 'fork' option. Forking will also occur if the
'jvmArguments' or 'agent' options are specified.
'jvmArguments' or 'agent' options are specified, or if devtools is present.
If you need to specify some JVM arguments (i.e. for debugging purposes), you can use
the <<<jvmArguments>>> parameter, see {{{./examples/run-debug.html}Debug the application}}
@@ -164,7 +164,7 @@ spring.devtools.remote.restart.enabled=false
---
Prior to <<<devtools>>>, the plugin supported hot refreshing of resources by default which has
now be disabled in favor of the solution described above. You can restore it at any time by
now be disabled in favour of the solution described above. You can restore it at any time by
configuring your project:
---