Difference between --also-make and --also-make-dependents

maven

Solution

- `--also-make` builds all projects that `my-project` depends on

- `--also-make-dependents` builds all projects that depend on `my-project`

If you imagine DAG (Directed Acyclic Graph) of dependencies between projects (where edge A -> B means that B is dependent on A), then `--also-make` builds all projects from project my-project towards the "root" projects and `--also-make-dependents` builds all projects from project my-project towards the "leaf" projects.

Example

Let's say you have following projects:

 dao     util
   \     /
  services
     | 
   webapp

Then

`mvn --projects services --also-make`

will build `dao`, `util` and `services`. And

`mvn --projects services --also-make-dependents`

will build `services` and `webapp`

Problem

I recently learned about `--also-make` parameter that you can pass to Maven. From what I understand it causes that not only `my-project` will be build but also all projects dependent to my-project. ``` mvn --projects my-project --also-make install ``` But there is also another parameter called `--also-make-dependents`. From description it looks like it does the same thing as `--also-make`, but my friend at work told me that they are not the same thing. What is the difference?

Original source