• 请不要在回答技术问题时复制粘贴 AI 生成的内容
Ayanokouji
V2EX  ›  程序员

JDK 22 发布了

  •  1
     
  •   Ayanokouji · Mar 20, 2024 · 8680 views
    This topic created in 965 days ago, the information mentioned may be changed or developed.
    不要刷 jdk8 的梗,你不用,不代表技术不需要更新

    Features

    423: Region Pinning for G1
    447: Statements before super(...) (Preview)
    454: Foreign Function & Memory API
    456: Unnamed Variables & Patterns
    457: Class-File API (Preview)
    458: Launch Multi-File Source-Code Programs
    459: String Templates (Second Preview)
    460: Vector API (Seventh Incubator)
    461: Stream Gatherers (Preview)
    462: Structured Concurrency (Second Preview)
    463: Implicitly Declared Classes and Instance Main Methods (Second Preview)
    464: Scoped Values (Second Preview)
    60 replies  •  2024-03-22 15:27:59 +08:00
    chendy
    chendy
    Mar 20, 2024
    1
    Memory API 这个是官方的堆外内存 API ?
    dcsuibian
    dcsuibian
    Mar 20, 2024
    2
    我还在等《 Core Java 》第 13 版
    Ayanokouji
    Ayanokouji
    OP
    Mar 20, 2024
    3
    @chendy 用来代替 jni 的吧,详细可以看下 jep https://openjdk.org/jeps/454
    wysnxzm
    wysnxzm
    Mar 20, 2024❤️17
    4
    "你不用,不代表技术不需要更新" 说得好
    WWKvR5Zf41968v20
    WWKvR5Zf41968v20
    Mar 20, 2024
    5
    JetbrainsRuntime 21 还没啥动静,希望 idea 早点默认换成 jdk21 。
    anonydmer
    anonydmer
    Mar 20, 2024
    6
    一直在跟,有几个不错的特性
    youmilk
    youmilk
    Mar 20, 2024
    7
    @Betasecond 我已经切换到 21runtime 很久了
    28Sv0ngQfIE7Yloe
    28Sv0ngQfIE7Yloe
    Mar 20, 2024
    8
    新项目我用的是 21 + Springboot 3.2.x

    体验下来很不错
    lstz
    lstz
    Mar 20, 2024 via Android
    9
    拥抱变化,这样 Java 才有更好的未来!
    Akitora
    Akitora
    Mar 20, 2024
    10
    希望结构化并发早日转正
    lisongeee
    lisongeee
    Mar 20, 2024❤️1
    12
    jdk8 已经发布 10 年了,但是我每天还是能看到诸如《学习 jdk8 新特性》的文章

    类比 JavaScript 还有 es6 已经发布近 9 年,但是我每天还是能看到诸如《学习 es6 新特性》的文章
    yy77
    yy77
    Mar 20, 2024
    13
    21 是 LTS ,22 不是。就这个理由就导致 22 只会是一个临时的版本了。
    boatrain1111
    boatrain1111
    Mar 20, 2024
    14
    期待结构化并发
    afeiche
    afeiche
    Mar 20, 2024
    15
    上个礼拜开会,由于很多老版本安全漏洞没法修复,有人提议强制新项目升级到 21 ,可是很多人都不同意,最后只能改成建议,很多人还是不愿意学习新东西的
    28Sv0ngQfIE7Yloe
    28Sv0ngQfIE7Yloe
    Mar 20, 2024❤️1
    16
    @afeiche

    不是不愿意学,本质上不用新特性的话基本没啥学习成本,大家主要是不愿意承担升级会引起的运维问题。
    BBCCBB
    BBCCBB
    Mar 20, 2024
    17
    @afeiche 升级后依然可以按 jdk6 的写法写. 这就是 java 的兼容性.
    LieEar
    LieEar
    Mar 20, 2024
    18
    G1 的提升非常明显
    lix7
    lix7
    Mar 20, 2024
    19
    458: Launch Multi-File Source-Code Programs
    这个感觉对开发还挺友好,真不错
    KMpAn8Obw1QhPoEP
    KMpAn8Obw1QhPoEP
    Mar 20, 2024 via Android
    20
    昨天刚开完会说要升到 21 期待一把
    flowerains
    flowerains
    Mar 20, 2024
    21
    现在可以直接升 21 了,不是 LTS 是不可能在生产环境直接部署的
    主要是有很多历史遗留项目只能在 java8 上跑,这个才是不愿意升级的主要原因

    对于有好奇心的人来说,为啥不愿意折腾新技术呢
    Huelse
    Huelse
    Mar 20, 2024
    22
    已经全面转 jdk21 了
    shanghai1943
    shanghai1943
    Mar 20, 2024
    23
    前阵子才从 jdk8 升级到 jdk17
    vvvVictoria
    vvvVictoria
    Mar 20, 2024
    24
    @BBCCBB #17 jdk9 有 module ,需要升级改造的
    xwwsxp
    xwwsxp
    Mar 20, 2024
    25
    @janwarlen java 和 node ( JS )不一样的,java 早前就有 package 的概念,而 js 早前没有 package 的概念,反而出现了 module 的概念,jdk9 之后,java 借鉴了 js 的 module ;但是,并不是 java 就一定强制使用 module ,虽然,oracle 建议大家使用。
    BBCCBB
    BBCCBB
    Mar 20, 2024
    26
    @janwarlen export all 就行了..
    cutiechi
    cutiechi
    Mar 20, 2024
    27
    全都 21 了
    foolishcrab
    foolishcrab
    Mar 20, 2024 via iPhone❤️10
    28
    就我观察国内公司跟进 21 的非常非常多,因为 vt 太符合互联网业务了,我司核心业务基本都在升级 21 。
    降下来多少台服务器都是能写进业绩的。
    这种时候还在刷“我用 java8”的只能说又蠢又坏
    Subfire
    Subfire
    Mar 20, 2024
    29
    等下个 LTS 再体验
    luozic
    luozic
    Mar 20, 2024
    30
    JDK 21 的分代 zgc 对于没能力改写成 c++/rust 还是基于 jvm 的大数据 ,可以节约内存的同时还提升性能。
    ldyisbest
    ldyisbest
    Mar 20, 2024
    31
    @youmilk idea 里面能手动设置运行时吗? 还是要怎么设置,我发现用 java17 有 bug
    BBCCBB
    BBCCBB
    Mar 20, 2024❤️1
    32
    @ldyisbest 双击 shift 搜索 choose boot runtime for the ide.
    ldyisbest
    ldyisbest
    Mar 20, 2024
    33
    @BBCCBB 找到了,谢谢~
    Lambdua
    Lambdua
    Mar 20, 2024
    34
    @Betasecond 实际使用效果如何啊
    dif
    dif
    Mar 20, 2024
    35
    以前学 java 的时候,从 1.7-11 ,每次发布都会学习下新的特性,语法,API ,11 以后就在没关注过了,顶多装了个 17 和 21 的 JDK ,其实也没学习过新的特性。
    whoami9426
    whoami9426
    Mar 20, 2024
    36
    说的好 record 和 文本块 就很香
    zhouhu
    zhouhu
    Mar 20, 2024
    37
    @Betasecond 上次在知乎看到说性能没有提升
    Surechun
    Surechun
    Mar 20, 2024
    38
    @shanghai1943 去年才把生产全部从 8 升级到 11 ,今年打算升级到 17 。现在 21 也稳了吗?
    dr1q65MfKFKHnJr6
    dr1q65MfKFKHnJr6
    Mar 20, 2024
    39
    之前项目需要,要用 apache nifi , 这玩意最新版居然最低要求 JDK 21 ,然后我新开的项目、jar 都转向 21 了
    奈何公司大部分 java8er , 都抵触升级 21 , 不想改之前的轮子
    zzzmh
    zzzmh
    Mar 20, 2024
    40
    正在从 8 过渡到 17 ,目前感觉良好
    MrXiong
    MrXiong
    Mar 20, 2024
    41
    @luozic 想知道能提升多少
    yty2012g
    yty2012g
    Mar 20, 2024
    42
    公司很多内部的框架,因为使用了类似于 Bytebude 这样的字节码修改工具,导致框架不升级,业务就很难升级。
    simpleisbest
    simpleisbest
    Mar 20, 2024
    43
    @foolishcrab 21 不是免费的吧,8 免费啊
    blessingsi
    blessingsi
    Mar 20, 2024
    44
    很久不用 java 了,求问现在 g1 和 zgc 是怎么个情况了,二者选择主要要考虑什么呀
    Sezxy
    Sezxy
    Mar 20, 2024
    45
    部分老项目迁移到 jdk21 ,那些改不动的还是 jdk8
    ovtfkw
    ovtfkw
    Mar 20, 2024 via iPhone
    46
    jdk8 其他关我卵事
    SurfaceView
    SurfaceView
    Mar 20, 2024❤️1
    47
    楼上说 『这种时候还在刷“我用 java8”的只能说又蠢又坏』的人
    别人 用 java 8 就是蠢和坏???这算不算人身攻击呢???
    人家面试进个公司,公司用 java8 ,然后你让人家什么业务也没干呢上来先开会说 必须换成 jdk22 ??
    badbye
    badbye
    Mar 20, 2024
    48
    最想 java 有多返回值和 cpp const 特性
    kneo
    kneo
    Mar 20, 2024 via Android
    49
    @Morii 你说的还是不愿意学啊……
    kneo
    kneo
    Mar 20, 2024 via Android
    50
    @Morii 你说的就是不愿意学啊……
    kneo
    kneo
    Mar 20, 2024 via Android
    51
    不好意思,我以为没发出去。
    sakura6264
    sakura6264
    Mar 20, 2024
    52
    不知道这下玩 MC 能不能再快一点(
    Dragonphy
    Dragonphy
    Mar 21, 2024
    54
    @simpleisbest 很多 OpenJDK 有免费商用的发行版啊,你非要用 Oracle JDK 那也没办法,但是 Oracle JDK 21 我记得也可以免费商用两年的样子。
    shanghai1943
    shanghai1943
    Mar 21, 2024
    55
    @Surechun 感觉不着急的话可以再等等。8 升到 17 倒是没遇到太多问题。除了一些 mybatis 访问 java base 包的问题
    28Sv0ngQfIE7Yloe
    28Sv0ngQfIE7Yloe
    Mar 21, 2024
    56
    @kneo #49

    愿不愿意学和已经平稳运行的项目生产环境愿不愿意升级到 JDK21 是两码事。
    28Sv0ngQfIE7Yloe
    28Sv0ngQfIE7Yloe
    Mar 21, 2024
    57
    @kneo #49 就拿我所在的环境来讲,是否升级到 JDK21 就是一个从上而下的推动,大部门技术负责人开始推,相关的中台支持、基建、DevOPS 服务有了 KPI 才会适配。这种事从来不是我们拧螺丝的可以决定的。
    afeiche
    afeiche
    Mar 22, 2024
    58
    @Morii 确实,前几年我自己负责的项目升级到了 17 ,然后集成测试、打包找了一堆人才搞完,公司整体工具链得能跟上,但是线上运维反而没啥问题,可能这就是 java 兼容性的体现吧,
    rb6221
    rb6221
    Mar 22, 2024
    59
    21 不是 LTS 啊。。。。
    Ayanokouji
    Ayanokouji
    OP
    Mar 22, 2024
    60
    @janus77 21 是 lts ,22 不是
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1019 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 102ms · UTC 22:43 · PVG 06:43 · LAX 14:43 · JFK 17:43
    ♥ Do have faith in what you're doing.