elharo commented on a change in pull request #236:
URL: https://github.com/apache/maven-site/pull/236#discussion_r624241259
##########
File path: content/apt/guides/mini/guide-multiple-modules.apt
##########
@@ -37,11 +39,25 @@ Guide to Working with Multiple Modules
* Collects all the available modules to build
- * Sorts the projects into the correct build order
+ * Sorts the modules into the correct build order
- * Builds the selected projects in order
+ * Selects which modules to build
-** Reactor Sorting
+ * Builds the selected modules in order
+
+** Collecting Modules
+
+ Module collection starts from one aggregate project. That project defines
the modules of which it consists using the <<<\<modules\>>>> element.
+ This is a recursive process, so aggregators can have child modules which are
aggregators themselves.
+
+ For this process to work, it does not matter which POM you start with.
+ Maven will attempt to find the root of a multi-module project, by traversing
upwards in the directory structure until it finds a POM with a <<<.mvn>>>
sibling directory.
Review comment:
will attempt --> attempts
In general pick a single tense, usually present, in the document
##########
File path: content/apt/guides/mini/guide-multiple-modules.apt
##########
@@ -59,25 +75,117 @@ Guide to Working with Multiple Modules
Note that only "instantiated" references are used -
<<<dependencyManagement>>> and <<<pluginManagement>>> elements do not cause a
change to the reactor sort order.
-** Command Line Options
+** Selecting Modules
- No special configuration is required to take advantage of the reactor,
however it is possible to customize its behavior.
+ By default, Maven will build all modules it has collected. However, you can
select a subset of these modules to build using command line flags.
Review comment:
will build --> builds
##########
File path: content/apt/guides/mini/guide-multiple-modules.apt
##########
@@ -59,25 +75,117 @@ Guide to Working with Multiple Modules
Note that only "instantiated" references are used -
<<<dependencyManagement>>> and <<<pluginManagement>>> elements do not cause a
change to the reactor sort order.
-** Command Line Options
+** Selecting Modules
- No special configuration is required to take advantage of the reactor,
however it is possible to customize its behavior.
+ By default, Maven will build all modules it has collected. However, you can
select a subset of these modules to build using command line flags.
+ Those flags come in three categories:
- The following command line switches are available:
+ * Inclusion and exclusion
+
+ * Relationships between modules
+
+ * Dealing with failures
+
+ This section ends with how those flags relate to each other.
+
+*** Inclusion and exclusion
+
+ Using <<<--projects>>> you can specify which modules you want to build.
+ You can do this by specifying a comma-delimited list of project selectors.
+ A project selector is a string that is composed of the
<<<groupId:artifactId>>>, only <<<:artifactId>>> or the relative path to a
module.
+
+ A module can be selected (default), or excluded from the build. You exclude
a module by prefixing the selector with a <<<!>>> or <<<->>>. To explicitly
select a module, prefix it with a <<<+>>>.
+
+ When a selector does not resolve to an existing module, Maven will fail the
build. You can prevent this by adding the <<<?>>> prefix.
+ This prefix should always go after the other prefixes.
- * <<<--resume-from>>> - resumes a reactor from the specified project (e.g.
when it fails in the middle)
+*** Relationships between modules
- * <<<--also-make>>> - build the specified projects, and any of their
dependencies in the reactor
+ Modules inside a project can have two types of relationships: parent/child
and dependency/dependent.
- * <<<--also-make-dependents>>> - build the specified projects, and any
that depend on them
+ When selecting a parent (aggregate), Maven automatically selects the child
modules as well. Similarly, Maven excludes child modules of an excluded parent
(aggregate).
+ To prevent this recursive behaviour, combine <<<--projects>>> with
<<<--non-recursive>>>.
- * <<<--fail-fast>>> - the default behavior - whenever a module build
fails, stop the overall build immediately
+ Maven knows about the dependencies between modules inside the multi-module
project.
+ Using <<<--also-make>>>, Maven includes all dependencies of the selected
projects in the build.
+ Similarly, <<<--also-make-dependents>>> lets Maven include all modules which
are dependent on the selected projects.
- * <<<--fail-at-end>>> - if a particular module build fails, continue the
rest of the reactor and report all failed modules at the end instead
+*** Dealing with failures
- * <<<--non-recursive>>> - do not use a reactor build, even if the current
project declares modules and just build the project in the current directory
+ There are several ways to customize how the reactor deals with failures.
+ <<<--fail-at-end>>> lets the build fail after building as many modules as
possible. In this case, modules that do not depend on a failed module, will
still be built.
+ <<<--fail-fast>>>, in contrast, will fail the build as soon as one module
has failed. This is the default behaviour.
+ <<<--fail-never>>> ignores build failures.
+
+ When a build has failed, and you want to start it again, you can skip
building the modules that were previously built successfully using
<<<--resume>>>.
+ In case you want to resume a build from a specific module, you can use
<<<--resume-from \<selector\>>>>.
Review comment:
delete 'In case you want"
##########
File path: content/apt/guides/mini/guide-multiple-modules.apt
##########
@@ -37,11 +39,25 @@ Guide to Working with Multiple Modules
* Collects all the available modules to build
- * Sorts the projects into the correct build order
+ * Sorts the modules into the correct build order
- * Builds the selected projects in order
+ * Selects which modules to build
-** Reactor Sorting
+ * Builds the selected modules in order
+
+** Collecting Modules
+
+ Module collection starts from one aggregate project. That project defines
the modules of which it consists using the <<<\<modules\>>>> element.
+ This is a recursive process, so aggregators can have child modules which are
aggregators themselves.
+
+ For this process to work, it does not matter which POM you start with.
+ Maven will attempt to find the root of a multi-module project, by traversing
upwards in the directory structure until it finds a POM with a <<<.mvn>>>
sibling directory.
+ This allows Maven to resolve dependencies on modules from the same
multi-module project, regardless of the location of the starting POM.
+ When Maven fails to find the root, it will assume that the starting POM is
the root. For consistent behaviour, create a <<<.mvn>>> directory in the root
directory of the project.
Review comment:
will assume --> assumes
##########
File path: content/apt/guides/mini/guide-multiple-modules.apt
##########
@@ -59,25 +75,117 @@ Guide to Working with Multiple Modules
Note that only "instantiated" references are used -
<<<dependencyManagement>>> and <<<pluginManagement>>> elements do not cause a
change to the reactor sort order.
-** Command Line Options
+** Selecting Modules
- No special configuration is required to take advantage of the reactor,
however it is possible to customize its behavior.
+ By default, Maven will build all modules it has collected. However, you can
select a subset of these modules to build using command line flags.
+ Those flags come in three categories:
- The following command line switches are available:
+ * Inclusion and exclusion
+
+ * Relationships between modules
+
+ * Dealing with failures
+
+ This section ends with how those flags relate to each other.
+
+*** Inclusion and exclusion
+
+ Using <<<--projects>>> you can specify which modules you want to build.
Review comment:
delete "you want"
##########
File path: content/apt/guides/mini/guide-multiple-modules.apt
##########
@@ -59,25 +75,117 @@ Guide to Working with Multiple Modules
Note that only "instantiated" references are used -
<<<dependencyManagement>>> and <<<pluginManagement>>> elements do not cause a
change to the reactor sort order.
-** Command Line Options
+** Selecting Modules
- No special configuration is required to take advantage of the reactor,
however it is possible to customize its behavior.
+ By default, Maven will build all modules it has collected. However, you can
select a subset of these modules to build using command line flags.
+ Those flags come in three categories:
- The following command line switches are available:
+ * Inclusion and exclusion
+
+ * Relationships between modules
+
+ * Dealing with failures
+
+ This section ends with how those flags relate to each other.
Review comment:
those --> these
##########
File path: content/apt/guides/mini/guide-multiple-modules.apt
##########
@@ -59,25 +75,117 @@ Guide to Working with Multiple Modules
Note that only "instantiated" references are used -
<<<dependencyManagement>>> and <<<pluginManagement>>> elements do not cause a
change to the reactor sort order.
-** Command Line Options
+** Selecting Modules
- No special configuration is required to take advantage of the reactor,
however it is possible to customize its behavior.
+ By default, Maven will build all modules it has collected. However, you can
select a subset of these modules to build using command line flags.
+ Those flags come in three categories:
- The following command line switches are available:
+ * Inclusion and exclusion
+
+ * Relationships between modules
+
+ * Dealing with failures
+
+ This section ends with how those flags relate to each other.
+
+*** Inclusion and exclusion
+
+ Using <<<--projects>>> you can specify which modules you want to build.
+ You can do this by specifying a comma-delimited list of project selectors.
+ A project selector is a string that is composed of the
<<<groupId:artifactId>>>, only <<<:artifactId>>> or the relative path to a
module.
+
+ A module can be selected (default), or excluded from the build. You exclude
a module by prefixing the selector with a <<<!>>> or <<<->>>. To explicitly
select a module, prefix it with a <<<+>>>.
+
+ When a selector does not resolve to an existing module, Maven will fail the
build. You can prevent this by adding the <<<?>>> prefix.
Review comment:
will fail --> fails
##########
File path: content/apt/guides/mini/guide-multiple-modules.apt
##########
@@ -59,25 +75,117 @@ Guide to Working with Multiple Modules
Note that only "instantiated" references are used -
<<<dependencyManagement>>> and <<<pluginManagement>>> elements do not cause a
change to the reactor sort order.
-** Command Line Options
+** Selecting Modules
- No special configuration is required to take advantage of the reactor,
however it is possible to customize its behavior.
+ By default, Maven will build all modules it has collected. However, you can
select a subset of these modules to build using command line flags.
+ Those flags come in three categories:
- The following command line switches are available:
+ * Inclusion and exclusion
+
+ * Relationships between modules
+
+ * Dealing with failures
+
+ This section ends with how those flags relate to each other.
+
+*** Inclusion and exclusion
+
+ Using <<<--projects>>> you can specify which modules you want to build.
+ You can do this by specifying a comma-delimited list of project selectors.
+ A project selector is a string that is composed of the
<<<groupId:artifactId>>>, only <<<:artifactId>>> or the relative path to a
module.
+
+ A module can be selected (default), or excluded from the build. You exclude
a module by prefixing the selector with a <<<!>>> or <<<->>>. To explicitly
select a module, prefix it with a <<<+>>>.
+
+ When a selector does not resolve to an existing module, Maven will fail the
build. You can prevent this by adding the <<<?>>> prefix.
+ This prefix should always go after the other prefixes.
- * <<<--resume-from>>> - resumes a reactor from the specified project (e.g.
when it fails in the middle)
+*** Relationships between modules
- * <<<--also-make>>> - build the specified projects, and any of their
dependencies in the reactor
+ Modules inside a project can have two types of relationships: parent/child
and dependency/dependent.
- * <<<--also-make-dependents>>> - build the specified projects, and any
that depend on them
+ When selecting a parent (aggregate), Maven automatically selects the child
modules as well. Similarly, Maven excludes child modules of an excluded parent
(aggregate).
+ To prevent this recursive behaviour, combine <<<--projects>>> with
<<<--non-recursive>>>.
- * <<<--fail-fast>>> - the default behavior - whenever a module build
fails, stop the overall build immediately
+ Maven knows about the dependencies between modules inside the multi-module
project.
+ Using <<<--also-make>>>, Maven includes all dependencies of the selected
projects in the build.
+ Similarly, <<<--also-make-dependents>>> lets Maven include all modules which
are dependent on the selected projects.
- * <<<--fail-at-end>>> - if a particular module build fails, continue the
rest of the reactor and report all failed modules at the end instead
+*** Dealing with failures
- * <<<--non-recursive>>> - do not use a reactor build, even if the current
project declares modules and just build the project in the current directory
+ There are several ways to customize how the reactor deals with failures.
+ <<<--fail-at-end>>> lets the build fail after building as many modules as
possible. In this case, modules that do not depend on a failed module, will
still be built.
+ <<<--fail-fast>>>, in contrast, will fail the build as soon as one module
has failed. This is the default behaviour.
Review comment:
will fail --> fails
##########
File path: content/apt/guides/mini/guide-multiple-modules.apt
##########
@@ -59,25 +75,117 @@ Guide to Working with Multiple Modules
Note that only "instantiated" references are used -
<<<dependencyManagement>>> and <<<pluginManagement>>> elements do not cause a
change to the reactor sort order.
-** Command Line Options
+** Selecting Modules
- No special configuration is required to take advantage of the reactor,
however it is possible to customize its behavior.
+ By default, Maven will build all modules it has collected. However, you can
select a subset of these modules to build using command line flags.
+ Those flags come in three categories:
Review comment:
Those --> These
##########
File path: content/apt/guides/mini/guide-multiple-modules.apt
##########
@@ -59,25 +75,117 @@ Guide to Working with Multiple Modules
Note that only "instantiated" references are used -
<<<dependencyManagement>>> and <<<pluginManagement>>> elements do not cause a
change to the reactor sort order.
-** Command Line Options
+** Selecting Modules
- No special configuration is required to take advantage of the reactor,
however it is possible to customize its behavior.
+ By default, Maven will build all modules it has collected. However, you can
select a subset of these modules to build using command line flags.
+ Those flags come in three categories:
- The following command line switches are available:
+ * Inclusion and exclusion
+
+ * Relationships between modules
+
+ * Dealing with failures
+
+ This section ends with how those flags relate to each other.
+
+*** Inclusion and exclusion
+
+ Using <<<--projects>>> you can specify which modules you want to build.
+ You can do this by specifying a comma-delimited list of project selectors.
+ A project selector is a string that is composed of the
<<<groupId:artifactId>>>, only <<<:artifactId>>> or the relative path to a
module.
+
+ A module can be selected (default), or excluded from the build. You exclude
a module by prefixing the selector with a <<<!>>> or <<<->>>. To explicitly
select a module, prefix it with a <<<+>>>.
+
+ When a selector does not resolve to an existing module, Maven will fail the
build. You can prevent this by adding the <<<?>>> prefix.
+ This prefix should always go after the other prefixes.
- * <<<--resume-from>>> - resumes a reactor from the specified project (e.g.
when it fails in the middle)
+*** Relationships between modules
- * <<<--also-make>>> - build the specified projects, and any of their
dependencies in the reactor
+ Modules inside a project can have two types of relationships: parent/child
and dependency/dependent.
- * <<<--also-make-dependents>>> - build the specified projects, and any
that depend on them
+ When selecting a parent (aggregate), Maven automatically selects the child
modules as well. Similarly, Maven excludes child modules of an excluded parent
(aggregate).
+ To prevent this recursive behaviour, combine <<<--projects>>> with
<<<--non-recursive>>>.
- * <<<--fail-fast>>> - the default behavior - whenever a module build
fails, stop the overall build immediately
+ Maven knows about the dependencies between modules inside the multi-module
project.
+ Using <<<--also-make>>>, Maven includes all dependencies of the selected
projects in the build.
+ Similarly, <<<--also-make-dependents>>> lets Maven include all modules which
are dependent on the selected projects.
- * <<<--fail-at-end>>> - if a particular module build fails, continue the
rest of the reactor and report all failed modules at the end instead
+*** Dealing with failures
- * <<<--non-recursive>>> - do not use a reactor build, even if the current
project declares modules and just build the project in the current directory
+ There are several ways to customize how the reactor deals with failures.
+ <<<--fail-at-end>>> lets the build fail after building as many modules as
possible. In this case, modules that do not depend on a failed module, will
still be built.
Review comment:
lets the build fail after--> fails the build after...
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]