http://jdk.java.net/14/release-notes
Java 采取六个月发布一个版本以后,每次发布大家的关注少了很多了。。
不理解为什么要发布 preview 的 feature,这种 feature 大家敢用吗。
感觉需要一个 Babel,可以配置转换到特定版本,特定 Runtime 的 JDK,对,我说的就是 Kotlin。
http://jdk.java.net/14/release-notes
Java 采取六个月发布一个版本以后,每次发布大家的关注少了很多了。。
不理解为什么要发布 preview 的 feature,这种 feature 大家敢用吗。
感觉需要一个 Babel,可以配置转换到特定版本,特定 Runtime 的 JDK,对,我说的就是 Kotlin。
|
chendyMar 18, 2020
1
距离下一个 LTS 的 17 还有一年半时间
感觉 loom 这种依然遥遥无期… |
|
yjxjnMar 18, 2020
2
Java8 路过。。。现在学习 Java8 太合适了,资料多,而且企业大部分都是 8,甚至有些是 6
|
|
TypeErrorMar 18, 2020 via Android
3
还是 kotlin 好
|
|
hantsyMar 18, 2020
4
重新下载一遍 OpenJDK,发现和半个月前下载的文件一样。应该是早就准备好发布了,之前就奇怪,Java version 打印出来的日期是 3 月 17 号。
AdoptOpenJDK 14 还没发布正式版本。 Preview 这种方式挺好的,没正式发布之前,先得到用户反馈,不断改进。总之一下出来的标准好。 切换 JDK,用 Maven 的 Tool Chain 就好了。 Text Block,Record ( Kotlin Data Class Clone ),Pattern Marching (现在还不是很好用,功能不如 Scala 强大)现在 Java 14 都有了。Sealed Class 也在加入之中。这对提高开发效率还是不错的。 |
|
wysnylcMar 18, 2020
5
小步快跑可比瀑布模式好多了,发现有问题及时改正还来得及
|
|
6
|
|
sagaxuMar 18, 2020 via Android
7
半年一个版本谁敢用
|
|
9
C# 欢迎各位
|
|
hantsyMar 18, 2020
10
Instanceof Pattern Matching
https://github.com/hantsy/java-sandbox/blob/master/docs/instanceof-pattern-matching.md Helpful NPE Exception Messages https://github.com/hantsy/java-sandbox/blob/master/docs/helpful-npe.md Record https://github.com/hantsy/java-sandbox/blob/master/docs/record.md Small improvements in Text Block https://github.com/hantsy/java-sandbox/blob/master/docs/java14-text-block-improvement.md |
|
ben1024Mar 18, 2020
11
14 了?感觉 8 以后完全没有更新的可能了
|
|
DonaidTrumpMar 18, 2020 via iPhone
12
@gz911122 前端很少设计业务逻辑,后端往往和业务逻辑数据库挂钩,想对比起来同样更新频度,后端风险更高
|
|
hantsyMar 18, 2020
13
@sagaxu Spring 5.3 兼容 14 了。一些新语言特性也在支持中,看到有 Experiemental 项目尝试支持 Record (肯定要等 Record 稳定后才可能出现在 Spring 正式版本中)。
|
|
keshawnvanMar 18, 2020
14
之前团队从 Java8 升级到 Java11 过,收益并不大,迁移成本还不小。后续升级应该会谨慎很多。。。
|
|
gz911122Mar 18, 2020
15
|
|
yiyi11Mar 18, 2020 via Android
16
好奇问下,jdk 历史上有 breaking change 吗?
|
|
miceanMar 18, 2020
17
NPE 改进挺重要的
record 在 lombok 的加持下有些鸡肋…… |
|
hantsyMar 18, 2020
18
@keshawnvan 8-11 不知道会有什么成本?难道你全部用 Module System ?
收益方面嘛,11 后我用得多的几个语言特性: var, Collections 的 .of 静态工厂 另外,Optional,Stream 等也在 8 后加入一些实用方法。 |
|
zzzmhMar 18, 2020
19
8 还能用一万年
|
|
arthas2234Mar 18, 2020
20
现在还用 jdk8,之前从 jdk6 升级上来的,真香。。
|
|
keshawnvanMar 18, 2020
21
@hantsy 我们之前的项目有兼容旧系统的一些接口,升级 11 之后 JavaEE 的东西都干掉了,兼容花了很长时间。11 在语法层面的提升比较小,用的比较多的就是 List.of()和 Map.of()。var 很少用,什么时候 Java 能出个 val。。。
|
|
samondleeMar 18, 2020
22
很多在运营手游服务端后端还在用 jdk6
|
|
rockyou12Mar 18, 2020
25
还好吧,14 那个 switch 真的很像 kotlin 的 when 了,这个语法比之前那些香多了,再也不用 if..if else..if else........
|
|
luzeminMar 18, 2020
26
公司用的 8
|
|
Tn5ohB1Yecdk3qCKMar 18, 2020
27
等 jdk20 再说
|
|
jinsongzhaoMar 18, 2020
28
头像很漂亮,哦哦,你说的是 JDK 14 呀
|
|
yuexuanMar 18, 2020
29
我们公司还在用 8 呀...
|
|
pmispigMar 18, 2020
31
就算出了 JDK 10086,我还是坚持 1.8
|
|
GreendaysMar 18, 2020
32
这是面向 KPI 更新吗?
|
|
richard1122Mar 18, 2020
33
好多 kotlin 的特性 java 也有了。。
|
|
MakHoCheungMar 18, 2020
34
@chendy java20 应该就有了
|
|
redford42Mar 18, 2020
35
8 很好,先这样吧
|
|
nefuerMar 18, 2020
36
@jinsongzhao 看头像 哈哈哈
|
|
MrBearinMar 18, 2020
37
管他咋更新, 我脚的公司就会一直用 8.....
|
|
liangzimoMar 18, 2020
38
.net 5 preview 1 也出来了
|
|
murmurMar 18, 2020
39
坚持 java8 不动摇
|
|
ice2neetMar 18, 2020
40
loom 还没出 没啥质的改变 8 够用了
|
|
xFryeMar 18, 2020
41
下次一定,我还是用 8
|
|
spectureMar 18, 2020
42
@keshawnvan 迁移的成本体现在哪些方面?
|
|
FrankDMar 18, 2020 via Android
43
java8 对企业来说还是免费的,后面就要收费了,除非用的不是 oracle 家
|
|
44
现在来说,8 确实已经够用了,后面的更新都是不痛不痒的,大家都不怎么关注。
估计下个大发布,就是 Loom 了。 |
|
wangxiaoaerMar 18, 2020 via Android
45
@zichen 泛型支持了没?
|
|
46
@zichen 我的关注点是 preview 的 feature,没有一个兼容的机制,preview 的后来被删了就尴尬了,我觉得大家是不敢用的。Go 也是 6 个月一个版本,但是会兼容的; Java 以前也是兼容著称的,现在改成这种发布,真没觉得好。
|
|
hantsyMar 18, 2020
47
@keshawnvan Java EE 部分主要是 JDBC,XML,Web Service 的为了写 Client 程序的一些 API,早就计划删除,这些只要重要加回依赖就好了。
|
|
bk201Mar 18, 2020
49
升级的需求是啥?拼命更新,老系统都吃不消吧
|
|
hantsyMar 18, 2020
50
实际从 8 后面,JVM 的变化非常大,GC 算法增删很大,这些不是做这些领域的工作,没怎么关心。
|
|
hantsyMar 18, 2020
51
@ZSeptember Kotlin 的语言特性也是采用这种机预览机制添加的。
|
|
GMMar 18, 2020
52
我就想问默认参数什么时候支持啊?复杂一点的类,本来一个构造函数就能搞定的事情,现在要要一二三四五,甚至六七八个构造函数,累不累啊?
|
|
hantsyMar 18, 2020
55
@sorra 有些标准化, 比如 Base64 Encoder。
很少量的删除了,一般都是有替代品。一个主要我看到就是清理以前 com.sun 里面的 API,这里面有很多写工具,操作 Class 文件可能用到的 API。除非大势已去的,比如 Applet,直接 Cut 掉了。 |
|
hantsyMar 18, 2020
56
另外一个 Java 11 中 Stable 的特性是 HttpClient,我觉得算是一大特性,它基于新的 Java9 Flow API 和 8 的 Future API。
试用过,感觉有点点怪怪的。写什么客户的时候不需要再用第三方 Http Client,如 Apache,OKHttp 等。 处理一般的文件,InputStream,String 的数据都是可以的,JSON 可以借标准 JSONB,JSONP 等。 |
|
cgpiaoMar 18, 2020
57
java14 出来后跟 kotlin 好像。
|
|
hantsyMar 18, 2020
58
Kotlin 现在 Spring 是全盘接受,Kotlin 确是一等公民,所有特性都是急于添加 Kotlin DSL 支持。Kotlin DSL 语法是好是坏,我个人没太多感觉。
虽然 Spring 以前也接受过 Groovy,Scala。Groovy 进入了 Spring 核心,坐了冷板凳。Scala 还未进入核心,直接放弃了。 Kotlin 感觉强大的两个东西,extensions, reified,很多 Spring 的 Kotlin API 简化支持都是在 Reified 语法上做文章。 |
|
sagaxuMar 18, 2020 via Android
59
移除了 CMS 垃圾收集器,ZGC 也支持 Mac 和 Win 了
|
|
lawrencexuMar 18, 2020 via Android
60
@yiyi11 之前 8 有个小版本引入了 keystore 相关的安全性增强,然后很多应用就挂了,需要 workaround 才能正常工作。7 升 8 的时候计算的 rounding 改过,8 升 11 的时候 locale 相关也改过。这只是我碰过的。
|
|
hantsyMar 18, 2020
61
CMS 是不是已经删除了?
|
|
jinsongzhaoMar 18, 2020
62
需要用到 Nashorn JavaScript 引擎,9 以后就 Deprecated 了。比较关心多个 jar 包运行时,是否真共享 jvm,节省内存了。
|
|
hantsyMar 18, 2020
63
@jinsongzhao 已经删除了 JS Engine。
|
|
MithrilMar 18, 2020
64
@hantsy Oracle 这公司已经算是业界毒瘤了吧,口碑比当年的微软还差。
你仔细看看协议,Oracle 发布的 JDK 是每个版本只维护半年,半年后是没有免费更新的,哪怕 LTS 都是一样。你想用那就要么跟着半年更新一个大版本,要么就买服务。订阅服务是可以获取长期更新的。 不然为什么大厂都发布自己的 build,就是因为原来用的好好 Oracle JDK 没法用了。 |
|
coderEOSMar 18, 2020 via Android
65
skip this version +10086
|
|
keshawnvanMar 18, 2020
66
@hantsy 依赖没那么好加,很多给出的依赖都不好用。。依赖在运行时不兼容的问题也很多
|
|
keenkillerMar 18, 2020
67
要看 LTS 版本,这种普通版本无所谓了…跟 go 不一样,go 的随便升级的
|
|
toms0301Mar 18, 2020
68
还在使用 java1.6.
|
|
zpf124Mar 18, 2020
69
@FrankD 然而事实是只有截止 JDK8_u202 是使用的旧的协议, 之后的 JDK8 版本协议也换成最新的那版不支持免费商用的版本了。
也就说说从 19 年 3 月之后在 oracle 官方下载的最新版本 jdk8 用于商用的话都是违反协议的。 想免费商用那只能当 JDK8 也结束维护周期了,只能注册一个账号然后去它的 release 存档里找 u202 之前的版本。 (不过我身边还是没有见到有谁提这茬事,还是依旧去下最新的 jdk8 继续用) |
|
CbdyMar 18, 2020
70
@jinsongzhao
nashorn 可以转 graaljs,graaljs 提供了 nashorn 兼容模式,加两个 jar 依赖即可 https://github.com/graalvm/graaljs/blob/master/docs/user/NashornMigrationGuide.md |
|
cwjokakaMar 18, 2020
71
java8 能战 10 年
|
|
zpf124Mar 18, 2020
72
@hantsy Oracle jdk 的新协议是对任何商用都收费,和订阅不订阅没关系。Oracle 官网提供的 jdk 和 openjdk 官网提供的 jdk 是两份东西,包含的私有技术和使用的协议都不同。openJdk 的协议才是用的原来的可免费商用的协议。
Oracle 确实对开源贡献很大,一方面他们确实将自己的部分内部技术拿来提升了开源项目,另一方面他们也买黄了好几个开源项目。 |
|
AdvenMar 18, 2020
73
Kubernates 每个季度都会发布一个版本,有许多 API 接口都是不稳定的 alpha 版,这个并不会影响用户实际使用,未到生产可用的 API 不使用就完了。
|
|
anjuyiyuMar 18, 2020
75
14 看了遍新特性,
npe 的调整还是可以, gc 相关的改动很多, cms gc 在 14 退役了, 不过生产还是 Java 8。升级收益点不是很清晰 |
|
hantsyMar 18, 2020
77
|
|
t2dooMar 18, 2020
78
昨天头一回用那个 mybatis 写了个 select,run 的时候报错代码 5,噢,原来是要用 jdk8,真香
|
|
fateMar 18, 2020
79
什么时候支持纤程
|
|
IGJackloveMar 18, 2020
80
@wysnylc 谁敢用?。。。自己学着玩还差不多。
|
|
daozhihunMar 18, 2020
81
我觉得近几年更到 11 有希望,14 估计还要等个七八年吧
|
|
q447643445Mar 18, 2020
82
8 都没摸透. 11 就更没去看了😂
|
|
jelipoMar 18, 2020
83
Kotlin 什么都好,就是那个异常不能强制抛出了,现在的业务异常严重依赖 Exception。
|
|
ZiavMar 18, 2020 via Android
84
吓得我赶紧抱紧我的 Java 8
|
|
0xljhMar 19, 2020
85
升级 jdk 版本对 kpi 没用,出锅了还要背锅
|
|
xcstreamMar 19, 2020
87
java 出到 100 了还是大多数用 8
|
|
alyaMar 20, 2020
88
我选 scala
|
|
goodboy95Apr 1, 2020
89
@ben1024 更新个 var 也不错嘛,虽然在 idea 上我还是尽量避免用 var 的,不能像 vs code 一样把鼠标放上去自动显示实际类型。
|
|
MotherShipApr 1, 2020
90
不是 LTS 谁用啊。。
Record 字段多没法写注释太 sb 了,被 lombok 吊着打 JDK11 也没啥动力更新,说实在 lombok 的 var 和 val 已经够用了。。再说想吃语法糖不如 kotlin |
|
tldzyxJul 3, 2020
91
我司定格在 jdk-8u181 这个版本了, 原因也很简单粗暴: CDH 官方认证, 然后集群统一 jdk 版本利于运维.
https://docs.cloudera.com/documentation/enterprise/6/release-notes/topics/rg_java_requirements.html#concept_hzw_zyl_rcb |
|
tldzyxJul 3, 2020
92
https://docs.cloudera.com/documentation/enterprise/release-notes/topics/rn_consolidated_pcm.html#concept_ihg_vf4_j1b
贴错了, 因为 CDH6 吃相不太好看, 恰好运维也不想升级折腾, 所以 CDH 5.16.x 是在用版本. |
|
wenjun19931112Oct 20, 2020
93
jdk14 可以到这里来下载 http://www.jdkdownload.com/
|