Alexander Kriegisch created MSHARED-1327:
--------------------------------------------

             Summary: Change output directory default in AbstractMavenReport
                 Key: MSHARED-1327
                 URL: https://issues.apache.org/jira/browse/MSHARED-1327
             Project: Maven Shared Components
          Issue Type: Improvement
          Components: maven-reporting-impl
    Affects Versions: maven-reporting-impl-4.0.0-M11
            Reporter: Alexander Kriegisch


The output directory should default to {{${project.build.directory}}} instead 
of {{${project.reporting.outputDirectory}}}. Quoting my reasoning from 
https://github.com/apache/maven-jxr/commit/ae81a34ac616bf7e4ea4fa9d4eb09f0979eaccb1#commitcomment-130639906:

> (...) because the latter is simply wrong IMO. For stand-alone mojo execution, 
> a plugin should not mess with Maven Site's default directory. Imagine a 
> situation in which each module should get its own, self-consistent report 
> when called stand-alone, but the site should contain an aggregate with a 
> different structure or maybe no report from that plugin at all. The default 
> would then pollute the site directory. This is why on the ML I asked you 
> (@michael-o), if overriding a `@Parameter` annotation on a base class field 
> by another `@Parameter` annotation on a setter in a subclass it is the right 
> or canonical way to implement such a default override.
> 
> BTW, like I also said before, Maven Javadoc Plugin, even though it does not 
> use the abstract base class, implements the default correctly: build dir for 
> stand-alone, report dir in site generation context.

The javadoc is, BTW, still correct and does not need to be changed: In a site 
generation context, the reporting base directory will be set here automatically 
without any further changes due to:

{code:java}
    @Override
    public void setReportOutputDirectory(File reportOutputDirectory) {
        this.reportOutputDirectory = reportOutputDirectory;
        this.outputDirectory = reportOutputDirectory;
    }
{code}




--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to