Java SE Runtime Environment 是一款软件编程语言和计算平台,它的基础技术支持最新的程序,同时还包括实用程序、游戏和业务应用程序。Java SE Runtime Environment 在世界各地的 8.5 亿多台个人计算机和数十亿套设备上运行,其中包括移动设备和电视设备.需要的朋友赶紧下载吧!
基本介绍
1、Java SE Runtime Environment 共享类库需要在GAC(Global Assembly Cache)中注册,注册过程比较复杂,首先要用工具生成公开/私有密钥对,然后结合密钥和类库版本号连编,最后使用工具注册到GAC中好以后,会被放在"C:Winntassemblygac类库的名称空间版本号"目录下,不同的类库版本在注册的时候会按照版本号分开放置:
·某类库1.0版本 C:Winntassemblygac名称1.0名称.dll
·某类库1.1版本 C:Winntassemblygac名称1.1名称.dll
2、可以同时存在一个类库的n个版本,至于在程序中用哪个版本,在程序的配置文件中声明,CLR会根据声明来调用相应的版本的类库。我觉得.Net实现方法未免太复杂了一些,将所有共享类库都塞到一个系统目录下,并且同一个类库还有n个版本,将来.Net第三方开发的类库逐渐丰富起来以后,.Net类库的GAC也会越来越庞大,会不会也搞得和Windows注册表一样难以维护?软件发布到服务器上的时候,类库要再注册一次,服务器会逐渐形成一个庞大的树状的GAC,GAC里面存放着组件的n个版本。试想经过一段时间之后,C:Winntassemblygac目录会越来越庞大,有的组件甚至有n个版本都放在那里,你又不敢随便删除,不知道是不是有程序需要使用,我不明白MS为什么要把这么简单的事情搞到这么复杂?
讨论:全局程序集缓存不会是无限大的,所以“将来.Net第三方开发的类库逐渐丰富起来以后,.Net类库的GAC也会越来越庞大,会不会也搞得和Windows注册表一样难以维护?”这是杞人忧天。原因如下:第一是操作系统的生命周期一般不会是无限长的,而且越来越短,Windows为证,同时.Net Framework也在不断更迭,在十年左右的时间里,全球的程序产量是有限的,高质量的第三方开发的类库更是有限,需要注册到GAC的就更少了。
注意事项
1、共享类库需要在GAC(Global Assembly Cache)中注册,注册过程比较复杂,首先要用工具生成公开/私有密钥对,然后结合密钥和类库版本号连编,最后使用工具注册到GAC中好以后,会被放在"C:Winntassemblygac类库的名称空间版本号"目录下,不同的类库版本在注册的时候会按照版本号分开放置:
·某类库1.0版本 C:Winntassemblygac名称1.0名称.dll
·某类库1.1版本 C:Winntassemblygac名称1.1名称.dll
2、可以同时存在一个类库的n个版本,至于在程序中用哪个版本,在程序的配置文件中声明,CLR会根据声明来调用相应的版本的类库。我觉得.Net实现方法未免太复杂了一些,将所有共享类库都塞到一个系统目录下,并且同一个类库还有n个版本,将来.Net第三方开发的类库逐渐丰富起来以后,.Net类库的GAC也会越来越庞大,会不会也搞得和Windows注册表一样难以维护?软件发布到服务器上的时候,类库要再注册一次,服务器会逐渐形成一个庞大的树状的GAC,GAC里面存放着组件的n个版本。试想经过一段时间之后,C:Winntassemblygac目录会越来越庞大,有的组件甚至有n个版本都放在那里,你又不敢随便删除,不知道是不是有程序需要使用,我不明白MS为什么要把这么简单的事情搞到这么复杂?
讨论:全局程序集缓存不会是无限大的,所以“将来.Net第三方开发的类库逐渐丰富起来以后,.Net类库的GAC也会越来越庞大,会不会也搞得和Windows注册表一样难以维护?”这是杞人忧天。原因如下:第一是操作系统的生命周期一般不会是无限长的,而且越来越短,Windows为证,同时.Net Framework也在不断更迭,在十年左右的时间里,全球的程序产量是有限的,高质量的第三方开发的类库更是有限,需要注册到GAC的就更少了。
更新介绍
- “G1 增强功能 (JEP156): 限制了长期停顿的可能性,释放系统资源。G1依靠全面的垃圾收集(Garbage Collections)以执行分类卸载,并减少任何其他的关键性操作。
- Java Flight Recorder (JFR)的动态支持: 为了简化Oracle Java SE Advanced使用性,JFR现在能够命令行或Java任务控制(JMC)中的动态启动,无论其是否是原始的启动参数都可实现。JFR的动态启动让用户无需停止工作也能解决生成问题。
- 增强本地包装程序:允许开发人员在不安装现有的Java Runtime的基础上创建本地应用。这些独立的应用能够在如Mac应用商店的区域内进行部署。应用开发人员可全面控制运行时间和应用输入口。
- 新的日期更新工具:这个工具能够从IANA时期注册表数据库中消耗“初始”的数据(tzdata)规则,并把其转换成JRE所需要的格式。这让用户通过升级最新的IANA就能同时实现JDK/JRE时区的更新。
- 支持Nashorn:该版本拥有大量的Nashorn优化功能,包括对动态语言的支持等等。同时新版本还增加了Nashorn 分类过滤器,可以通过全新的过滤界面从JavaScript编码中对Java分类进行精细管控。
- 针对内存压力的JVM反馈: “内存压力” 是代表系统总体内存使用(RAM)的一个特性。这个新特性可以在部署多个JVM的系统中降低内存的消耗,并将其在每个JVM内的大小控制在一定的范围之内,避免因内存不足而引发的问题(OOMEs)。
- Java 任务控制 5.5 (JMC): 这个工具现在已经和JDK 8u40进行捆绑。基于Eclipse 4.4,JMC 5.5包含了现在已经签署的插件,并拥有默认隐藏Lambda 格式的隐藏方式。
- Lambda 格式的减少和缓存 (JEP 210): 这个增强功能可以为应用减少所需的内存足迹,同时提高了动态语言的性能。
- 本地内存跟踪扩展性 (JEP 195): 这个功能已经得以提升,让其运行时不会产生显著的性能影响。同时,该功能让用户可以自行诊断Java虚拟机(JVM)内存泄露。
- 增强SHA算法的加密性: SPARC类型系统的性能已经得到提高,这些系统在网络信任中通过签署证书而被大量使用。SHA性能对互联网安全很重要,因为浏览器已经开始使用计算更昂贵的SHA-256版本或者更高版本,SHA-1正在逐渐被淘汰。
新推的JavaFX特点和增强功能包括:
- 能够在Mac OS X上实现JavaFX堆栈现代化(JEP 206):JavaFX媒介堆栈已经从不适用于QTKit和 Quicktime迁移到更新的AVFoundation 架构中, 全面适配Mac OS X。 该功能帮助使用JavaFX媒体堆栈的开发人员有机会在Mac应用商店上发布他们的应用。
- JavaFX 访问性 (JEP 204):现有的JavaFX控制功能已经得到增强,并为开发人员提供了公用的API,让其可以编写自己的访问控制程序。
- 当前的Java SE版本可用于一般计算使用,在Oracle网站上无需付费。如欲获取,终端用户可访问这里,开发人员可访问 这里
∨ 展开