diff --git a/plugins/javaFX/common-javaFX-plugin/src/org/jetbrains/plugins/javaFX/packaging/JavaFxAntGenerator.java b/plugins/javaFX/common-javaFX-plugin/src/org/jetbrains/plugins/javaFX/packaging/JavaFxAntGenerator.java index 0afee28b74e7..5c4e56572558 100644 --- a/plugins/javaFX/common-javaFX-plugin/src/org/jetbrains/plugins/javaFX/packaging/JavaFxAntGenerator.java +++ b/plugins/javaFX/common-javaFX-plugin/src/org/jetbrains/plugins/javaFX/packaging/JavaFxAntGenerator.java @@ -118,7 +118,11 @@ public class JavaFxAntGenerator { if (bundle != JavaFxPackagerConstants.NativeBundles.none) { deployTag.addAttribute(new Pair("nativeBundles", bundle.name())); } - + + if (packager.isEnabledSigning()) { + deployTag.add(new SimpleTag("fx:permissions", new Pair("elevated", "true"))); + } + deployTag.add(new SimpleTag("fx:application", new Pair("refid", appId))); final List infoPairs = new ArrayList(); diff --git a/plugins/javaFX/javaFX-CE/testSrc/org/jetbrains/plugins/javaFX/packaging/JavaFxAntTaskTest.java b/plugins/javaFX/javaFX-CE/testSrc/org/jetbrains/plugins/javaFX/packaging/JavaFxAntTaskTest.java index bd0713e12123..191304c602c6 100644 --- a/plugins/javaFX/javaFX-CE/testSrc/org/jetbrains/plugins/javaFX/packaging/JavaFxAntTaskTest.java +++ b/plugins/javaFX/javaFX-CE/testSrc/org/jetbrains/plugins/javaFX/packaging/JavaFxAntTaskTest.java @@ -32,6 +32,7 @@ public class JavaFxAntTaskTest extends UsefulTestCase{ private static final String PRELOADER_CLASS = "preloaderClass"; private static final String TITLE = "title"; private static final String PRELOADER_JAR = "preloaderJar"; + private static final String SIGNED = "signed"; public void testJarDeployNoInfo() throws Exception { doTest("\n" + @@ -93,6 +94,37 @@ public class JavaFxAntTaskTest extends UsefulTestCase{ "\n", Collections.singletonMap(TITLE, "My App")); } + public void testJarDeploySigned() throws Exception { + doTest("\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n" + + "\n", Collections.singletonMap(SIGNED, "true")); + } + public void testJarDeployPreloader() throws Exception { final HashMap options = new HashMap(); options.put(PRELOADER_CLASS, "MyPreloader"); @@ -155,6 +187,10 @@ public class JavaFxAntTaskTest extends UsefulTestCase{ packager.setPreloaderJar(preloaderJar); } + if (options.containsKey(SIGNED)) { + packager.setSigned(true); + } + final List temp = JavaFxAntGenerator .createJarAndDeployTasks(packager, artifactFileName, artifactName, "temp"); final StringBuilder buf = new StringBuilder(); @@ -178,6 +214,7 @@ public class JavaFxAntTaskTest extends UsefulTestCase{ private String myPreloaderClass; private String myPreloaderJar; private boolean myConvertCss2Bin; + private boolean mySigned; private MockJavaFxPackager(String outputPath) { myOutputPath = outputPath; @@ -211,6 +248,10 @@ public class JavaFxAntTaskTest extends UsefulTestCase{ myPreloaderJar = preloaderJar; } + public void setSigned(boolean signed) { + mySigned = signed; + } + @Override protected String getArtifactOutputPath() { return new File(myOutputPath).getParent(); @@ -302,7 +343,7 @@ public class JavaFxAntTaskTest extends UsefulTestCase{ @Override public boolean isEnabledSigning() { - return false; + return mySigned; } @Override