maven: manifest serialization/deserialization to/from xml fix

This commit is contained in:
Vladislav.Soroka
2015-04-16 15:20:53 +03:00
parent 3d79b7fea6
commit ecfe82c04a
2 changed files with 4 additions and 3 deletions
@@ -18,6 +18,7 @@ package org.jetbrains.jps.maven.compiler;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.util.io.FileUtil;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.util.Base64;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.jps.builders.storage.BuildDataPaths;
@@ -58,8 +59,7 @@ public class MavenCommonArtifactRootCopyingHandlerProvider extends ArtifactRootC
projectConfiguration.moduleConfigurations.get(getModuleName(artifact.getName()));
if (moduleResourceConfiguration != null && moduleResourceConfiguration.manifest != null) {
try {
final String manifest =
StringUtil.unescapeXml(moduleResourceConfiguration.manifest).replaceAll("\n\r|\n|\r", "\r\n") + "\r\n\r\n";
final String manifest = new String(Base64.decode(moduleResourceConfiguration.manifest));
FileUtil.writeToFile(root, manifest);
}
catch (IOException e) {
@@ -17,6 +17,7 @@ import com.intellij.openapi.util.text.StringUtil;
import com.intellij.openapi.vfs.LocalFileSystem;
import com.intellij.openapi.vfs.VfsUtil;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.util.Base64;
import com.intellij.util.containers.ContainerUtil;
import com.intellij.util.xmlb.XmlSerializer;
import org.jdom.Document;
@@ -227,7 +228,7 @@ public class MavenResourceCompilerConfigurationGenerator {
manifest.write(outputStream);
MavenDomProjectModel domModel = MavenDomUtil.getMavenDomProjectModel(module.getProject(), mavenProject.getFile());
final String resolvedText = MavenPropertyResolver.resolve(outputStream.toString("UTF8"), domModel);
resourceConfig.manifest = StringUtil.escapeXml(resolvedText);
resourceConfig.manifest = Base64.encode(resolvedText.getBytes("UTF8"));
}
finally {
StreamUtil.closeStream(outputStream);