[
https://issues.apache.org/jira/browse/MSHARED-1032?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17482927#comment-17482927
]
Herve Boutemy commented on MSHARED-1032:
----------------------------------------
I added links to javadoc for reporting-impl and reporting-api, to better
describe where the API update questions really happen :)
> API change: let canGenerateReport() throw an Exception
> ------------------------------------------------------
>
> Key: MSHARED-1032
> URL: https://issues.apache.org/jira/browse/MSHARED-1032
> Project: Maven Shared Components
> Issue Type: Improvement
> Components: maven-reporting-api
> Affects Versions: maven-reporting-api-3.0
> Reporter: Benjamin Marwell
> Priority: Major
> Fix For: maven-reporting-api-3.1.0
>
>
> Hi everyone,
> the [`{{AbstractReportMojo}}` in
> reporting-impl|https://maven.apache.org/shared/maven-reporting-impl/apidocs/org/apache/maven/reporting/AbstractMavenReport.html]
> implements a method [`{{canGenerateReport()}}` from
> reporting-api|https://maven.apache.org/shared/maven-reporting-api/apidocs/org/apache/maven/reporting/MavenReport.html].
> However, it is unable to throw any exceptions. Not even {{MojoExecutionEx}}
> or {{{}MavenReportEx{}}}, which is most unfortunate.
> It is being used twice:
> Once in {{execute() throws MojoExEx}}
> and in
> {{generate() throws MavenReportEx}} (and is called by execute()).
> This way, there is no way for reporting plugins to scan for files, because
> {{FileUtils::getFiles}} DOES throw a {{{}IOException{}}}, which then cannot
> be wrapped. However, the {{IOException}} from that method is useless anyway,
> because it is never declared in any methods it calls.
> Therefore please consider:
> * Declaring any Exception on `{{{}canGenerateReports(){}}}`
> * Removing the declared {{IOException}} in PlexusUtils ([PR
> exists|https://github.com/codehaus-plexus/plexus-utils/issues/180]) and
> Maven-Utils (issue: tbd).
> Thanks!
>
--
This message was sent by Atlassian Jira
(v8.20.1#820001)