如何更改密钥存储库中密钥的别名?

我用一个别名为:

memofile.reference.emma.jar=/Users/simpatico/.netbeans/6.8/modules/ext/emma.jar

我不记得为什么要用这么长的化名。我怀疑这只是备忘录,但在我的项目设置中,我有:

jnlp.signjar.alias=memofile.reference.emma.jar=/Users/simpatico/.netbeans/6.8/modules/ext/emma.jar

我现在正在更新应用程序并使用 maven,我需要将别名指定为:

<keystorealias>memofile.reference.emma.jar=/Users/simpatico/.netbeans/6.8/modules/ext/emma.jar
</keystorealias>

然而,这不工作。尝试与别名 mjee的另一个关键,它的工作。

那么我可以改变密钥的别名吗? 如果可以,怎么改? 否则 Maven 怎么会不接受我的化名呢?

131863 次浏览

It is possible to duplicate a key in a keystore with the keyclone command of keytool:

keytool -keyclone -alias "your-very-very-long-alias" -dest "new-alias" -keypass keypass -new new_keypass -keystore /path/to/keystore -storepass storepass

The changealias command changes the alias for an existing entry:

keytool -changealias -alias "your-very-very-long-alias" -destalias "new-alias" -keypass keypass -keystore /path/to/keystore -storepass storepass

For those that want to be prompted to enter password just remove the respective password flags (changealias example):

keytool -changealias -alias "your-very-very-long-alias" -destalias "new-alias" -keystore "/path/to/keystore"