我刚刚为Java SE 7下载了Oracle的Server JRE(link)我下载的文件是server-jre-7u45-linux-x64.tar.gz
。当我提取这个文件时,我惊讶地发现一个名为的目录jdk1.7.0_45被创建为包含完整的java JDK。不是我所期望的JRE安装。这里发生了什么?Oracle的服务器JRE包含JDK?
回答
答案是在父页面上的包的描述:
JDK(Java开发工具包)。对于Java开发人员。包含完整的JRE和用于开发,调试和监控Java应用程序的工具。
服务器JRE :(服务器Java运行时环境)用于在服务器上部署Java应用程序。包括用于服务器应用程序通常所需的JVM监视和工具的工具,但不包括浏览器集成(Java插件),自动更新和安装程序。
JRE:(Java Runtime Environment)。涵盖了大多数最终用户的需求。包含在系统上运行Java应用程序所需的所有内容。
在服务器JRE情况下,“工具通常所需的服务器应用程序”包括的JDK工具一些。例如,Web容器(如Tomcat)需要将JSP转换为已编译的Java Servlet,这需要一个可调用的Java编译器。
IMO,使用服务器JRE的好处在于它不包括;即Java插件是安全噩梦(!)和自动更新,这对于生产服务稳定性是不利的。
其中一个更令人困惑的方面可能会更好地用作堆栈溢出的新问题,这是在服务器JRE中复制的二进制文件。我知道在主“JRE”二进制文件“jre/bin”的不同目录“bin”中有“服务器应用程序通常需要的工具”。我不明白在这两个目录中复制像“java”和“keytool”这样的二进制文件。任何人都知道他们为什么这样做,而不是仅仅不这样做,或者至少将它们混合在一起?它们在功能上有什么不同?他们的md5sums会显示“否”。 – Bradley
你需要问“他们”。但是,符号链接可能会破坏(写得不好)的脚本;例如在依赖于JRE的第三方应用程序中。我不认为他们在功能上有所不同。 –
- 1. 为什么JDK包含JRE?
- 2. JDK包含src.zip,但JRE不包含
- 3. JDK附带的JRE与独立的JRE包含的JRE
- 4. glassfish服务器JDK/JRE问题
- 5. 包含在JDK中的JRE不能用作公共JRE?
- 6. 即使JDK包含JRE,JRE的需求是什么?
- 7. Java服务器jre 8包含哪些内容? (什么不是?)
- 8. 在JDK 1.5上安装Oracle JRE 1.6
- 9. 为什么ActiveMQ消息服务器需要JDK,而不是JRE?
- 10. 需要服务器VM,但在JRE中不可用。那么我需要什么软件包:JRE,JDK?
- 11. 运行java web服务(基于rest)的最佳选择(JRE/JDK vs Server JRE)
- 12. 服务器端包含
- 13. PHP服务器端包含
- 14. 使用JRE VS JDK
- 15. Eclipse的JRE或JDK缺少
- 16. 找不到JRE的JDK
- 17. 包含正确的jdk
- 18. 确定IBM Liberty服务器的JRE
- 19. JDK - Windows服务?
- 20. 包含图像的python服务器
- 21. 自包含的PHP服务器
- 22. PHP包含语句的服务器
- 23. 用于HTML的服务器端包含
- 24. Leiningen是否需要JDK/JRE?
- 25. 交叉编译JRE/JDK
- 26. Java JDK和JRE版本
- 27. JDK/JRE为I.Mx6选择(ARM)
- 28. 日食和JRE/JDK问题
- 29. 如何认可tomcat,jdk,jre?
- 30. JDK指向错误JRE
嗯,它包括javac? – user2864740
@ user2864740是的。 –
我再次检查,所以你这样做!哇。你在运行什么版本的Linux?您可能能够获得发行版的重新打包版本。 –