签名属性:Fx构建配置

时间:2012-07-08 14:44:27

标签: java javafx-2 keystore jar-signing

Eclipse EE 3.7中,我安装了JavaFX SDK并创建了JavaFX Project。当我打开build.fxbuild文件并选择Build Properties标签时,会有一个标题为Signing Properties的部分。它要求提供以下信息,

  • 密钥库
  • 商店-密码
  • 别名
  • 键入密码

对于Keystore字段,它提供了浏览文件系统和工作区的选项,但我不知道在哪里找到密钥库。有人可以帮我弄清楚如何通过Fx Build Configuration文件进行信息签名吗?

1 个答案:

答案 0 :(得分:2)

对于许多应用程序(例如独立应用程序),根本不需要代码签名 - 它可能会引入复杂性并可能降低性能和用户体验。只有需要资源outside of the Java sandbox的WebStart和Browser Embedded应用程序才需要代码签名。如果您确定您确实需要签署您的申请,请继续阅读。

以下是create your own keystore for signing使用java keytool的步骤。出于测试目的,您可以生成自己的自签名证书。对于部署到公众的实际应用程序,最小化安全警告,最好purchase a code signing certificate

用于创建用于代码签名的密钥库的示例命令行是:

keytool -genkey -alias signFiles -keystore examplestore

系统将提示您输入密钥和密钥库的密码。

JavaFX deployment packaging documentation包含有关如何通过标准JavaFX SDK签署应用程序的信息。您可以按照该描述并使用例如JavaFX ant任务签署您的罐子。

但是,Eclipse似乎有一些内置的功能来进行签名。如果您想利用它,请按照上面的说明创建您的密钥库。拥有适当的密钥库后,将用于创建密钥库的值输入到Eclipse IDE执行签名的相应字段中。

将字段与我之前提供的密钥库生成的示例命令行匹配。

Keystore - file location of the keystore containing your signing key: examplestore
Store-Password - password you assigned to access the keystore
Alias - friendly name to refer to the key: signFiles
Key-Password - password you assigned to access the key in the keystore

虽然Java JDK安装目录中提供了默认密钥库,但这通常与您自己的签名密钥和证书关联的密钥库不同。随JDK提供的密钥库主要用于存储用于验证SSL连接的证书颁发机构的证书。由于给定jdk供应商生成的java密钥库遵循一种通用格式,您还可以使用它来存储签名密钥和证书。但是,我不建议这样做,而是建议创建和使用自己的密钥库。通常,您希望将包含代码签名密钥的密钥库与其他信息分开,备份并且非常安全。