From 3eb47c5081bf6f4158333bd378641bc9b7c9a25f Mon Sep 17 00:00:00 2001 From: Michael Osipov Date: Sat, 13 Jul 2024 23:10:05 +0200 Subject: [PATCH] [MJAVADOC-791] maven-javadoc-plugin not working correctly together with maven-toolchains-plugin This closes #299 --- .../maven/plugins/javadoc/AbstractFixJavadocMojo.java | 4 +++- .../apache/maven/plugins/javadoc/AbstractJavadocMojo.java | 4 +++- .../org/apache/maven/plugins/javadoc/JavadocUtil.java | 8 +++++++- .../apache/maven/plugins/javadoc/FixJavadocMojoTest.java | 2 ++ 4 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/apache/maven/plugins/javadoc/AbstractFixJavadocMojo.java b/src/main/java/org/apache/maven/plugins/javadoc/AbstractFixJavadocMojo.java index 84d51f60a..7ef7968c7 100644 --- a/src/main/java/org/apache/maven/plugins/javadoc/AbstractFixJavadocMojo.java +++ b/src/main/java/org/apache/maven/plugins/javadoc/AbstractFixJavadocMojo.java @@ -636,7 +636,9 @@ private void executeClirr() throws MavenInvocationException { properties, invokerLogFile, session.getRequest().getGlobalSettingsFile(), - session.getRequest().getUserSettingsFile()); + session.getRequest().getUserSettingsFile(), + session.getRequest().getGlobalToolchainsFile(), + session.getRequest().getUserToolchainsFile()); try { if (invokerLogFile.exists()) { diff --git a/src/main/java/org/apache/maven/plugins/javadoc/AbstractJavadocMojo.java b/src/main/java/org/apache/maven/plugins/javadoc/AbstractJavadocMojo.java index b4555dd1b..cde92f309 100644 --- a/src/main/java/org/apache/maven/plugins/javadoc/AbstractJavadocMojo.java +++ b/src/main/java/org/apache/maven/plugins/javadoc/AbstractJavadocMojo.java @@ -5531,7 +5531,9 @@ private List getModulesLinks() throws MavenReportException { null, invokerLogFile, session.getRequest().getGlobalSettingsFile(), - session.getRequest().getUserSettingsFile()); + session.getRequest().getUserSettingsFile(), + session.getRequest().getGlobalToolchainsFile(), + session.getRequest().getUserToolchainsFile()); } catch (MavenInvocationException e) { logError("MavenInvocationException: " + e.getMessage(), e); diff --git a/src/main/java/org/apache/maven/plugins/javadoc/JavadocUtil.java b/src/main/java/org/apache/maven/plugins/javadoc/JavadocUtil.java index 40ac4090f..11d795b13 100644 --- a/src/main/java/org/apache/maven/plugins/javadoc/JavadocUtil.java +++ b/src/main/java/org/apache/maven/plugins/javadoc/JavadocUtil.java @@ -715,6 +715,8 @@ protected static void copyResource(URL url, File file) throws IOException { * @param invokerLog the log file where the invoker will be written, if null using System.out. * @param globalSettingsFile reference to settings file, could be null. * @param userSettingsFile reference to user settings file, could be null. + * @param globalToolchainsFile reference to toolchains file, could be null. + * @param userToolchainsFile reference to user toolchains file, could be null. * @throws MavenInvocationException if any * @since 2.6 */ @@ -726,7 +728,9 @@ protected static void invokeMaven( Properties properties, File invokerLog, File globalSettingsFile, - File userSettingsFile) + File userSettingsFile, + File globalToolchainsFile, + File userToolchainsFile) throws MavenInvocationException { if (projectFile == null) { throw new IllegalArgumentException("projectFile should be not null."); @@ -763,6 +767,8 @@ protected static void invokeMaven( request.setPomFile(projectFile); request.setGlobalSettingsFile(globalSettingsFile); request.setUserSettingsFile(userSettingsFile); + request.setGlobalToolchainsFile(globalToolchainsFile); + request.setToolchainsFile(userToolchainsFile); request.setBatchMode(true); if (log != null) { request.setDebug(log.isDebugEnabled()); diff --git a/src/test/java/org/apache/maven/plugins/javadoc/FixJavadocMojoTest.java b/src/test/java/org/apache/maven/plugins/javadoc/FixJavadocMojoTest.java index 57f587166..eedad8815 100644 --- a/src/test/java/org/apache/maven/plugins/javadoc/FixJavadocMojoTest.java +++ b/src/test/java/org/apache/maven/plugins/javadoc/FixJavadocMojoTest.java @@ -547,6 +547,8 @@ private void invokeCompileGoal(File testPom, Log log) throws Exception { properties, invokerLogFile, null, + null, + null, null); }