javafx packaging: sign preloader if configured (IDEA-104106)

(cherry picked from commit 6bc53c67ba5dd81c17be530e78fcd74b4ffa9030)
This commit is contained in:
anna
2013-03-29 11:57:01 +01:00
parent f37c726ded
commit 5e6f14e360
2 changed files with 23 additions and 12 deletions

View File

@@ -140,24 +140,31 @@ public abstract class AbstractJavaFxPackager {
final boolean selfSigning = isSelfSigning();
final int genResult = selfSigning ? genKey(binPath) : 0;
if (genResult == 0) {
final List<String> signCommandLine = new ArrayList<String>();
addParameter(signCommandLine, FileUtil.toSystemDependentName(binPath + File.separator + "jarsigner"));
collectStoreParams(selfSigning, signCommandLine);
addParameter(signCommandLine, tempDirectory.getPath() + File.separator + getArtifactRootName());
addParameter(signCommandLine, getAlias(selfSigning));
final int signedResult = startProcess(signCommandLine);
if (signedResult != 0) {
registerJavaFxPackagerError("JavaFX sign task has failed.");
sign(binPath, selfSigning, tempDirectory.getPath() + File.separator + getArtifactRootName());
final String preloaderJar = getPreloaderJar();
if (preloaderJar != null) {
sign(binPath, selfSigning, tempDirectory.getPath() + File.separator + preloaderJar);
}
} else {
registerJavaFxPackagerError("JavaFX generate certificate task has failed.");
}
}
private void sign(String binPath, boolean selfSigning, final String jar2Sign) {
final List<String> signCommandLine = new ArrayList<String>();
addParameter(signCommandLine, FileUtil.toSystemDependentName(binPath + File.separator + "jarsigner"));
collectStoreParams(selfSigning, signCommandLine);
addParameter(signCommandLine, jar2Sign);
addParameter(signCommandLine, getAlias(selfSigning));
final int signedResult = startProcess(signCommandLine);
if (signedResult != 0) {
registerJavaFxPackagerError("JavaFX sign task has failed.");
}
}
private int genKey(String binPath) {
final String keyStorePath = getKeystore(true);
final File keyStoreFile = new File(keyStorePath);