maven-javadoc-plugin/stale-data-encoding.patch

51 lines
1.8 KiB
Diff

--- a/src/main/java/org/apache/maven/plugins/javadoc/StaleHelper.java
+++ b/src/main/java/org/apache/maven/plugins/javadoc/StaleHelper.java
@@ -40,6 +40,19 @@ import org.codehaus.plexus.util.cli.Commandline;
*/
public class StaleHelper {
+ private static Charset getDataCharset()
+ {
+ if ( JavaVersion.JAVA_SPECIFICATION_VERSION.isAtLeast( "9" )
+ && JavaVersion.JAVA_SPECIFICATION_VERSION.isBefore( "12" ) )
+ {
+ return StandardCharsets.UTF_8;
+ }
+ else
+ {
+ return Charset.defaultCharset();
+ }
+ }
+
/**
* Compute the data used to detect a stale javadoc
*
@@ -55,13 +68,7 @@ public class StaleHelper {
String[] args = cmd.getArguments();
Collections.addAll(options, args);
- final Charset cs;
- if (JavaVersion.JAVA_SPECIFICATION_VERSION.isAtLeast("9")
- && JavaVersion.JAVA_SPECIFICATION_VERSION.isBefore("12")) {
- cs = StandardCharsets.UTF_8;
- } else {
- cs = Charset.defaultCharset();
- }
+ final Charset cs = getDataCharset();
for (String arg : args) {
if (arg.startsWith("@")) {
@@ -115,9 +122,11 @@ public class StaleHelper {
*/
public static void writeStaleData(Commandline cmd, Path path) throws MavenReportException {
try {
+ final Charset cs = getDataCharset();
+
List<String> curdata = getStaleData(cmd);
Files.createDirectories(path.getParent());
- Files.write(path, curdata, StandardCharsets.UTF_8);
+ Files.write(path, curdata, cs);
} catch (IOException e) {
throw new MavenReportException("Error checking stale data", e);
}