O requisito do JDK ou do JRE depende do próprio servidor de aplicativos específico. (por exemplo, JBOSS, tomcat, glassfish, etc), e suas estratégias para compilar para bytecode, e como ele decide sobre suas dependências na inicialização.
Em um sentido estrito, se o seu aplicativo java apenas executar o código de byte Java na forma de classes, você deverá conseguir sair com apenas um JRE. No entanto, se isso é verdade ou não, depende da estratégia do servidor Java App para verificar um JDK instalado defensivamente na inicialização ou apenas lançar uma exceção em algum momento quando a compilação é solicitada.
Alguns servidores de aplicativos usam o javac para compilar o jsp para a classe arquivos e, portanto, são dependentes de ter um sistema JDK instalado, isso pode ser contrastado com dizer tomcat , que inclui seu próprio compilador para jsps, portanto pode ser executado sob o JRE .
O keystore java é um recurso do Java SE, e tanto o openJDK quanto o Hotspot fazem referência a um arquivo $ JAVA_HOME / lib / security / java.security para selecionar seus padrões.
A menos que você tenha alterado $JAVA_HOME/lib/security/java.security
, a implementação do arquivo keystore.type = jks padrão procura $HOME/.keystore
, portanto cabe a você ultrapassar o local e as versões 1.5 e 1.6 do sunJDK usam esse formato e localização padrão.
então, basicamente, alterar $JAVA_HOME
não afeta a localização do keystore
(a menos que você tenha percorrido o local do keystore na pasta $ JAVA_HOME ...)
mas pode ser importante se você estiver usando algum provedor não padrão ou tiver definido algumas opções não padrão em java.security.