1
ddddad 2018-09-26 11:20:33 +08:00
嗯,可以升级了
|
2
nicevar 2018-09-26 11:20:47 +08:00
一个个都成版本帝了
|
3
wdlth 2018-09-26 11:22:36 +08:00
授权方式变了,法务部门又要笑了……
|
4
glues 2018-09-26 11:29:52 +08:00 4
不好意思,我们的项目还在用 1.5
|
5
mosliu 2018-09-26 11:35:38 +08:00
ZGC 不超过 10ms 感觉值得一试
|
6
sagaxu 2018-09-26 11:37:43 +08:00 via Android
收费了
|
7
socradi 2018-09-26 11:40:09 +08:00
java8 新特性都没用上,就出 11 了
|
8
Violienk 2018-09-26 11:41:40 +08:00
国内用最多的肯定是 1.7
|
9
jjianwen68 2018-09-26 11:41:48 +08:00 via Android 1
本地用 oraclejdk 开发,服务端运行使用 openjdk ?
|
10
kyrre 2018-09-26 11:43:03 +08:00
感觉 java8 还没摸透,要落伍啊
|
11
onnfee 2018-09-26 11:49:11 +08:00
LTS 值得研究一番啊!
|
12
Hancock 2018-09-26 11:50:10 +08:00
。。。
|
13
LeonKennedy 2018-09-26 11:52:20 +08:00
同,8 还没捂热乎,11 都出来了
|
14
Sinar OP 来自官网:
重要的变化和信息 以下是此版本的一些重要更改和信息。在某些情况下,这些发行说明中提供了有关下述更改的其他详细信息。 Applet 和 Web Start 应用程序所需的部署堆栈在 JDK 9 中已弃用,并已在 JDK 11 中删除。 如果没有部署堆栈,则已从支持的 JDK 11 配置列表中删除了支持的浏览器的整个部分。 在 Windows 和 macOS 上可用于 JRE 安装的自动更新不再可用。 在 Windows 和 macOS 中,在以前版本中安装 JDK 可选择安装 JRE。在 JDK 11 中,这不再是一个选项。 在此版本中,不再提供 JRE 或 Server JRE。仅提供 JDK。用户可以使用 jlink 创建较小的自定义运行时。 JDK 中不再包含 JavaFX。它现在可以从 openjfx.io 单独下载。 Oracle JDK 不再包含 JDK 7,8,9 和 10 中提供的 Java Mission Control。它现在是一个单独的下载。 以前的版本被翻译成英语,日语和简体中文以及法语,德语,意大利语,韩语,葡萄牙语(巴西),西班牙语和瑞典语。但是,在 JDK 11 及更高版本中,不再提供法语,德语,意大利语,韩语,葡萄牙语(巴西),西班牙语和瑞典语翻译。 Windows 的更新包装格式已从更改 tar.gz 为.zip ,这在 Windows 操作系统中更常见。 已更新的 macOS 包格式已更改.app 为.dmg ,这更符合 macOS 的标准。 |
15
Jafee 2018-09-26 11:54:21 +08:00 via iPhone
等一个月后和 mojave 一起装。
|
16
Sinar OP JavaFX 迁移到: https://openjfx.io/
|
18
Sinar OP Gradle 请升级到 4.8+ 版本
|
20
Sinar OP 删除旧版本控制台以及 web 支持,Mac 操作如下:
sudo rm -fr /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin sudo rm -fr /Library/PreferencePanes/JavaControlPanel.prefPane |
21
Sinar OP 关于多 Java 版本切换(如下为 Mac 修改方式,其他系统类似):
在终端配置文件( zshrc / bash_profile 等任意)添加: # Java export JAVA_6_HOME=`/usr/libexec/java_home -v 1.6` export JAVA_8_HOME=`/usr/libexec/java_home -v 1.8` export JAVA_11_HOME=`/usr/libexec/java_home -v 11.0` # 切换版本(在这里替换即可) export JAVA_HOME=$JAVA_11_HOME |
22
wdlth 2018-09-26 12:16:52 +08:00
不知道什么时候有 PPA 跟进
|
23
baozq 2018-09-26 13:34:32 +08:00 4
求别更新了,学不动了
|
24
Yuicon 2018-09-26 13:37:36 +08:00
lts 的版本出来了 可以把 9 和 10 一起看了
|
25
kaedea 2018-09-26 13:38:24 +08:00 via Android
一步到位直接转 Kotlin 吧
|
27
dbpe 2018-09-26 13:40:41 +08:00 2
Js 引擎被抛弃了...我我...我昨天刚引进去一个..
|
29
qfdk 2018-09-26 14:01:47 +08:00 via iPhone
之前就研究了 奇葩的版本号 好像还有 java18 19 啥的 以后按照年份命名 三年一个 lts 坑爹啊
|
30
qfdk 2018-09-26 14:19:16 +08:00
@dbpe #27 完蛋了,还真是,上周刚公测了。 然后有计划升到 lts 长期维护版,惨了。那边的一个全是 Nashorn 渲染的,客户用所谓的 js 写了很多脚本,api 都是根据那边来的。 天啊啊啊啊啊。。。
|
31
passerbytiny 2018-09-26 14:25:26 +08:00
@Sinar #13
关于下面这句话,我有个问题,6 之后有中文? 以前的版本被翻译成英语,日语和简体中文以及法语,德语,意大利语,韩语,葡萄牙语(巴西),西班牙语和瑞典 语。但是,在 JDK 11 及更高版本中,不再提供法语,德语,意大利语,韩语,葡萄牙语(巴西),西班牙语和瑞典语翻译。 |
32
passerbytiny 2018-09-26 14:29:38 +08:00
随便 Oracle 怎么发布,新项目用哪个版本,还是要看 Pivotal、Red Hat 以及它们管理的 Spring 社区和 Hibernate 社区用哪个
|
33
bk201 2018-09-26 14:42:23 +08:00
这随随便便的抛弃东西不是好习惯啊,你可以分离开做为一个附加模块多好.
|
36
Sinar OP @passerbytiny #32 说得好,等框架了
|
37
Sinar OP @dbpe #27 给你看这个 https://github.com/junit-team/junit5/issues/1481 目前比较好的方式是换用 JVM 上的脚本语言( Groovy,Jruby 等),或者使用 GraalVM 这类的东西( https://www.graalvm.org/docs/reference-manual/polyglot/)
|
39
Sinar OP @dbpe #27 刚刚看了一下,GraalVM 明确支持 Java11 版本字节码,意味着程序可以直接跑在 GraalVM 上,而且现在已经有 Mac 和 Linux 的社区版了
|
40
Sinar OP @lfzyx #38 好的,如果 V2 提供修改回复的功能就好了
Linux 相关切换版本: sudo update-alternatives --config java sudo update-alternatives --config javac sudo update-alternatives --config javadoc |
42
dbpe 2018-09-26 15:46:13 +08:00
@qfdk emmmmmm..真是个悲伤的故事...我是因为一些遗留的项目文件里 js 一些奇怪的数据结构(json 又不是 json)..自己构建树状结构数据麻烦..所以想用魔法打败魔法(js 打败 js)
|
43
Terry05 2018-09-26 15:59:32 +08:00
看来是时候把项目升级到 Java8 了
|
44
x66 2018-09-26 16:43:28 +08:00
授权方式变了,难道没有人关注一下吗?有没有大神能用通俗易懂的语言介绍一下跟之前有什么区别?
https://www.oracle.com/technetwork/java/javase/terms/license/javase-license.html |
45
niuroumian 2018-09-26 17:25:51 +08:00 via iPhone
不允许用来处理数据,不许用在生产环境,只能用来开发,构建原型系统
|
46
Narcissu5 2018-09-26 17:42:04 +08:00 7
讲真的楼上一群 java8 都没吃透的实在搞笑么,这都 8012 年了。java 演进的太慢而不是太快,不然也不会有 lomok,kotlin 之类的流行。你们这样真的 35 就准备转行吧。
另外 java 对于异步的支持真的太慢了 |
47
starcraft 2018-09-26 17:46:15 +08:00 via iPhone
下一个生产环境真正的 lts 一定是 j8 了。这个版本实在太经典。
|
48
niuroumian 2018-09-26 17:48:29 +08:00 via iPhone
好比 Oracle 出了一款最新菜刀,此刀可以用来练习切菜,但是切的菜不能吃,给 Oracle 付费你才能吃
|
49
SuperMild 2018-09-26 18:00:33 +08:00
感觉授权变化是针对 Google 和 Andriod 的,以后收费就有理有据了。
|
50
Sinar OP @starcraft #47 同,电脑一套 Java8 一套 Java11,而且好多第三方的 JVM 语言还是以 Java8 为基础的
|
51
dbpe 2018-09-26 18:31:23 +08:00
@Narcissu5 异步 Ver.X 那套能应付嘛?我没有这方面的经验..但是这个框架进入视野很久了.(没碰过) 但是还是想知道真正的场景下,能否应付..求大牛指教
|
52
Sin 2018-09-26 18:33:40 +08:00
是时候开始用 .net 了
|
53
MeteorCat 2018-09-26 18:34:05 +08:00 via Android
龟缩 java7
|
54
luopengfei14 2018-09-26 19:02:41 +08:00 via iPhone
@nicevar 全在刷版本号,连 Linux 内核也在刷
|
55
myu7815 2018-09-26 19:56:01 +08:00
11 的小版本升级需要重新安装吗
|
56
jamesxu 2018-09-26 20:20:35 +08:00 via iPhone
|
57
bobuick 2018-09-26 20:35:32 +08:00
1.8 的半残 lambda, stream 用溜了没
|
58
Sinar OP @x66 #44 实际上就是,JavaSE 10 是最后一个可以免费商用的 Java SE 版本,JavaSE 11 只能免费做学习和测试,不能免费从事任何形式的商业活动。
|
59
msl12 2018-09-26 21:37:13 +08:00
随便你升,公司永远用的 1.8。
|
60
sagaxu 2018-09-26 22:03:48 +08:00 via Android 3
@Sinar #58 这个说法并不正确,11 和以前的版本一样可以商用,但是免费版只更新半年,等 12 发布后,11 的更新不再公开发布,只有付费用户才能获得 11 的后续更新。
想继续使用保持更新的 oraclejdk 11,只能付钱。或者干脆使用 openjdk,有 redhat 等公司在维护。或者考虑 zulujdk。其实 linux 系统,用大公司发行版维护的 openjdk 也不错,不用担心安全问题。 TL;DR 免费的 oraclejdk,包括 lts 在内,每个大版本只支持 6 个月了,没钱的改用 openjdk 去. |
62
Dk2014 2018-09-26 22:29:43 +08:00
今天 ubuntu 18.04 lxc 装默认的 java 直接 11 了
我还专门找 ppa 换回 java8 |
63
orm 2018-09-26 22:55:59 +08:00 via iPhone
刚看了一下,11 官方有 deb 格式的安装包了
|
64
tairan2006 2018-09-26 23:05:34 +08:00
@Sinar mac 上用 jenv 管理就行
|
65
PythonAnswer 2018-09-26 23:30:52 +08:00
Oracle 真是烦啊. 搞开源的都恨他.
|
66
kyrre 2018-09-27 05:37:50 +08:00
@PythonAnswer 对,所以新启项目连 mysql 都不用了,坚决用 PostgreSQL。
|
67
Cbdy 2018-09-27 06:44:18 +08:00 via Android
tls1.3 好评
|
68
erosripe 2018-09-27 07:49:25 +08:00 via Android
是时候开发一个事务中间件,来搞 Java 了
|
69
chocotan 2018-09-27 08:51:07 +08:00
不是说 openjdk 和 oraclejdk 除了协议不一样外,其他基本一样吗?
|
70
Sanko 2018-09-27 08:56:07 +08:00 via Android
难道没人用 java10 么
|
71
x66 2018-09-27 09:01:47 +08:00
@sagaxu 但是官网上有写 Oracle JDK11 不能用于进行任何数据处理或任何商业、生产,而没有提到半年的问题啊?
Further, You may not: - use the Programs for any data processing or any commercial, production, or internal business purposes other than developing, testing, prototyping, and demonstrating your Application; https: //www.oracle.com/technetwork/java/javase/terms/license/javase-license.html |
72
sagaxu 2018-09-27 09:17:57 +08:00 via Android
|
73
zhangwugui 2018-09-27 09:23:01 +08:00
还在用 JDK8 的路过。
|
74
mrzhang76 2018-09-27 09:30:37 +08:00 via Android
本校教材还在讲 java7(ಡωಡ)
|
75
ZiLong 2018-09-27 09:33:48 +08:00 1
@Narcissu5 @dbpe 昨晚 springone 大会上出了几个新项目,愿景是想把异步响应式编程带到 everywhere。关系型数据库的一步连接项目 R2DBC https://github.com/r2dbc
|
76
ZiLong 2018-09-27 09:38:26 +08:00
|
79
wohenyingyu03 2018-09-27 10:37:38 +08:00
我还没懂原来 jdk 不包含 jre ?只有 jdk 的意思是只能编译不能运行?
|
80
Sinar OP @wohenyingyu03 #79 JRE 是单独的运行环境,JDK 是开发 + 运行环境(也就是内置了 JRE ),从 Java11 开始不再提供单独的 JRE,但你可以通过 jlink 指令创建属于自己的 JRE (通过组合模块的形式)
|
81
LowBCoder 2018-09-27 11:11:50 +08:00
别更了,我真的学不动了!
|
82
Sinar OP @wohenyingyu03 #79 不同版本的 JDK 所携带的 JRE 也是不一样的,常见的有 Hotspot ( Oracle )和 OpenJ9 ( IBM )
|
83
wohenyingyu03 2018-09-27 11:18:36 +08:00
@Sinar 谢谢解答,那原来提供了 jdk 还捆绑单独的 jre 的目的是什么呢?我以为 jdk 是不包含 jre,所以每次都装两个……😂
|
84
GTim 2018-09-27 11:20:01 +08:00
我前几天才刚写完 [Java 9]( https://www.twle.cn/c/yufei/java9/java9-basic-index.html) 的特性,还想着 Java 10 可以慢慢写,看来我的速度都赶不上官方的速度了
现在还在一边慢慢肯 java 并发编程方面的知识,Java 11 的特性介绍,按照计划,估计要年底了。 |
85
Sinar OP @wohenyingyu03 #83 JDK 分为两部分,Java API 和 JRE,JavaAPI 就是我们常用的各种自带类和方法,但是写完的代码需要有东西运行和测试,就要依靠 JRE (调用 JVM )。开发的时候我们需要调用 JavaAPI 并用 JRE 运行。发布时,程序编译成字节码,就不需要依赖 JavaAPI 而直接在 JRE (调用 JVM ) 上运行了。所以,发布时直接捆绑程序和 JRE 即可,不需要把整个 JDK 都包含进去。
还有一个情况就是,一些业务为了追求性能,已经无法满足 Java 代码和字节码的优化,于是开始对 JRE (尤其是 JVM ) 进行定制,就有了类似于 OpenJ9 这样的东西。 |
86
Sinar OP @wohenyingyu03 #83 至于之前版本的安装包捆绑 JRE,大概是为了生产环境测试 233,其实完全可以不安装
|
87
southsala 2018-09-27 11:57:44 +08:00
去趟雷吧,我上次升级买 sql 一大堆连接工具登不上
|
88
earendil1412 2018-09-27 12:50:53 +08:00
@passerbytiny Spring 5.1 已经支持了 java 11
|
89
passerbytiny 2018-09-27 14:40:16 +08:00
@wohenyingyu03 JDK 捆绑 JRE 是 Sun 和 IE 的遗留。Java 早期版本是以 Applet 为亮点的,Applet 的运行环境需要安装到操作系统环境上的 JRE,为了最小安装,一般独立提供。而早期 JDK 的安装方式超级挫(实际上现在也很挫),必须要手动配置环境变量,意味着单独安装 JDK 的话,并不一定有操作系统认识的 JRE,所以 Sun 干脆提供了 JDK+可选的 JRE 的安装方式。
|
90
passerbytiny 2018-09-27 14:41:17 +08:00
@earendil1412 #84 兼容性支持,不等于全面支持
|
91
someonedeng 2018-09-27 15:10:58 +08:00
zgc 10ms 听起来很有诱惑力。
|
93
stanjia 2018-09-27 20:08:47 +08:00
Oracle 果然,,, 要命
|
94
dif 2018-09-28 07:52:17 +08:00
lambda 和 stream 都没写溜。。。用用 var。。
|