Эта банка содержит записи, срок действия сертификата подписавшего которых истекает в течение шести месяцев.
Я подписал свой jar различными способами, но я получаю сообщение об ошибке выше, когда использую команду:
jarsigner -verify -verbose [my jar]
Есть ли способ избавиться от этой ошибки? Мой код просто перестанет работать через шесть месяцев, если он не будет повторно сертифицирован?
Вот полный набор команд, используемых для генерации ключа и подписи Jar:
keytool -genkey -keystore [keystore] -alias [alias] -validity 2000
keytool -selfcert -keystore [keystore] -alias [alias] -validity 2000
jarsigner -keystore [keystore] [jar] [alias]
1 ответ
Есть ли способ избавиться от этой ошибки?
Это не ошибка, а предупреждение. Что касается того, как этого избежать, убедитесь, что срок действия сертификата превышает 6 месяцев. Для самозаверяющего сертификата это вопрос предоставления правильных параметров при генерации ключа. Здесь keytool
Пример.
keytool -genkeypair -dname "cn=Mark Jones, ou=Java, o=Oracle, c=US"
-alias business -keypass <new password for private key> -keystore /working/mykeystore
-storepass <new password for keystore> -validity 180
Важная часть -validity 180
, Например, 180 дней или около 6 месяцев. Используйте 1800 около 5 лет.
Мой код просто перестанет работать через шесть месяцев, если он не будет повторно сертифицирован?
Не совсем.
- Пользователь в некоторых системах будет предупрежден о том, что срок действия сертификата истек, и ему будет предложено принять его. Если они это сделают, это будет работать как обычно. например, "подпись истекла":
- Другие системы могут быть настроены на автоматическое отклонение устаревших сертификатов. На этих машинах код, скорее всего, никогда не запустится или, в редких случаях, будет загружен, но будет применена песочница.
Я думал, что отключил кэширование Java, так как это раздражает, когда я пытаюсь развиваться.
Кэширование апплета во время тестирования - большая проблема. Я стараюсь избегать тестирования апплетов в браузере, пока это не станет абсолютно необходимым. Есть 3 способа тестирования апплетов, которые не будут кэшировать классы.