@Override public File get() { return getOutputFile(); } }
@TaskAction protected void doFullTaskAction() throws ManifestMerger2.MergeFailureException, IOException { ILogger iLogger = new LoggerWrapper(getLogger()); ManifestMerger2.Invoker mergerInvoker = ManifestMerger2. newMerger(getMainManifestFile(), iLogger, ManifestMerger2.MergeType.APPLICATION); List<File> secondaryManifestFiles = getSecondaryManifestFiles(); mergerInvoker.addLibraryManifests(secondaryManifestFiles.toArray(new File[secondaryManifestFiles.size()])); MergingReport mergingReport = mergerInvoker.merge(); if (mergingReport.getResult().isError()) { getLogger().error(mergingReport.getReportString()); mergingReport.log(iLogger); throw new BuildException(mergingReport.getReportString()); } try (FileWriter fileWriter = new FileWriter(getOutputFile())) { fileWriter.append(mergingReport .getMergedDocument(MergingReport.MergedManifestKind.MERGED)); } }