diff --git a/java/compiler/impl/src/com/intellij/packaging/impl/elements/ManifestFileUtil.java b/java/compiler/impl/src/com/intellij/packaging/impl/elements/ManifestFileUtil.java index 4700cab2d0c9..e579d3ec9df4 100644 --- a/java/compiler/impl/src/com/intellij/packaging/impl/elements/ManifestFileUtil.java +++ b/java/compiler/impl/src/com/intellij/packaging/impl/elements/ManifestFileUtil.java @@ -229,7 +229,7 @@ public class ManifestFileUtil { if (classpathText != null) { classpath.addAll(StringUtil.split(classpathText, " ")); } - return new ManifestFileConfiguration(path, classpath, mainClass); + return new ManifestFileConfiguration(path, classpath, mainClass, manifestFile.isWritable()); } public static List getClasspathForElements(List> elements, PackagingElementResolvingContext context, final ArtifactType artifactType) { diff --git a/java/compiler/impl/src/com/intellij/packaging/impl/ui/properties/ElementWithManifestPropertiesPanel.java b/java/compiler/impl/src/com/intellij/packaging/impl/ui/properties/ElementWithManifestPropertiesPanel.java index 9aad9c69c6da..210113da362a 100644 --- a/java/compiler/impl/src/com/intellij/packaging/impl/ui/properties/ElementWithManifestPropertiesPanel.java +++ b/java/compiler/impl/src/com/intellij/packaging/impl/ui/properties/ElementWithManifestPropertiesPanel.java @@ -120,7 +120,9 @@ public abstract class ElementWithManifestPropertiesPanel myClasspath = new ArrayList(); private String myMainClass; private String myManifestFilePath; public ManifestFileConfiguration(@NotNull ManifestFileConfiguration configuration) { - copyFrom(configuration); + myWritable = configuration.isWritable(); + myClasspath.addAll(configuration.getClasspath()); + myMainClass = configuration.getMainClass(); + myManifestFilePath = configuration.getManifestFilePath(); } - public ManifestFileConfiguration(@NotNull String manifestFilePath, @Nullable List classpath, @Nullable String mainClass) { + public ManifestFileConfiguration(@NotNull String manifestFilePath, @Nullable List classpath, @Nullable String mainClass, boolean isWritable) { + myWritable = isWritable; if (classpath != null) { myClasspath.addAll(classpath); } @@ -41,17 +46,14 @@ public class ManifestFileConfiguration { myManifestFilePath = manifestFilePath; } - public void copyFrom(@NotNull ManifestFileConfiguration configuration) { - myClasspath.clear(); - myClasspath.addAll(configuration.getClasspath()); - myMainClass = configuration.getMainClass(); - myManifestFilePath = configuration.getManifestFilePath(); - } - public List getClasspath() { return myClasspath; } + public boolean isWritable() { + return myWritable; + } + public void setClasspath(List classpath) { myClasspath = classpath; }