in src/main/java/org/apache/maven/plugins/changelog/ChangeLogReport.java [525:556]
private void writeChangelogXml(List<ChangeLogSet> changelogList) throws IOException {
StringBuilder changelogXml = new StringBuilder();
changelogXml
.append("<?xml version=\"1.0\" encoding=\"")
.append(getOutputEncoding())
.append("\"?>\n");
changelogXml.append("<changelog>");
for (ChangeLogSet changelogSet : changelogList) {
changelogXml.append("\n ");
String changeset = changelogSet.toXML(getOutputEncoding());
// remove xml header
if (changeset.startsWith("<?xml")) {
int idx = changeset.indexOf("?>") + 2;
changeset = changeset.substring(idx);
}
changelogXml.append(changeset);
}
changelogXml.append("\n</changelog>");
outputXML.getParentFile().mkdirs();
Writer writer = new OutputStreamWriter(
new BufferedOutputStream(Files.newOutputStream(outputXML.toPath())), getOutputEncoding());
writer.write(changelogXml.toString());
writer.flush();
writer.close();
}