afirefish
V2EX  ›  Java

做个小调查,有多少公司已经迁移到 JDK11 了?或者使用 OpenJDK?

  •  
  •   afirefish · Mar 5, 2020 · 12495 views
    This topic created in 2435 days ago, the information mentioned may be changed or developed.
    66 replies  •  2020-03-29 18:48:10 +08:00
    afirefish
    afirefish
    OP
    Mar 5, 2020
    1
    或者使用 OpenJDK ?
    niuroumian
    niuroumian
    Mar 5, 2020 via iPhone❤️1
    2
    zulujdk
    afirefish
    afirefish
    OP
    Mar 5, 2020
    3
    @niuroumian 请教一下,和使用 OracleJDK 有任何区别吗?我看官网的描述是提供高度一致性。
    aaaafei
    aaaafei
    Mar 5, 2020
    4
    jdk9 都还没升。感觉 8 之后的 stream 就能很好的满足我了。不清楚后面有什么新的特性。
    luckyrayyy
    luckyrayyy
    Mar 5, 2020
    5
    我们有无关紧要的小项目用的是 11...上量的还都是 8
    hoichallenger
    hoichallenger
    Mar 5, 2020 via Android
    6
    目前在用 adopt 的 11,还没出现过什么问题
    wupher
    wupher
    Mar 5, 2020
    7
    自用的是 11,单位生产用的还是 8。

    貌似没有大问题。小的地方,有些额外的依赖类,需要手工添加在 pom 中。别的没大区别。
    xi_lin
    xi_lin
    Mar 5, 2020
    8
    OpenJDK 性能差些
    hantsy
    hantsy
    Mar 5, 2020
    9
    一直用 AdoptOpenJDK
    pzhdfy
    pzhdfy
    Mar 5, 2020
    10
    JDK8 开发,加上 JDK11 兼容的代码(主要是 direct Bytebuffer 的 cleaner ),使用 jdk11 运行,G1 并行 full gc 感觉不错
    slyang5
    slyang5
    Mar 5, 2020
    11
    @wupher 用上了 模块化了 ?
    sagaxu
    sagaxu
    Mar 5, 2020 via Android
    12
    @xi_lin 8 之后性能一样了
    Zoro76
    Zoro76
    Mar 5, 2020
    13
    还在用 jdk8
    Weixiao0725
    Weixiao0725
    Mar 5, 2020❤️2
    14
    已经迁移到 Go 了。。
    laojin
    laojin
    Mar 5, 2020
    15
    OpenJDK 8
    stlee
    stlee
    Mar 5, 2020
    16
    还在用 8
    wupher
    wupher
    Mar 5, 2020
    17
    自用项目,尚未使用模块化
    @slyang5
    rogerus
    rogerus
    Mar 5, 2020
    18
    主要的生产系统还是 8。
    wysnylc
    wysnylc
    Mar 5, 2020❤️1
    19
    8888888888888888
    Oktfolio
    Oktfolio
    Mar 5, 2020
    20
    自用 Corretto 11
    yjxjn
    yjxjn
    Mar 5, 2020
    21
    生产环境,1.8,部分老旧系统还在 1.6.
    自己自学 Java 还在用 8,够了。
    zzf2019
    zzf2019
    Mar 5, 2020
    22
    openjdk 有些 jre 包没有,会让一些类报错,这是我项目经历过的血的教训
    GlobalNPC
    GlobalNPC
    Mar 5, 2020
    23
    从 7 往 8 迁移中。。。WTF
    rb6221
    rb6221
    Mar 5, 2020
    24
    jdk 稳定的很,如果不是为了新技术兼容和团队喜欢追升级,没人去升吧
    xiaowei0823
    xiaowei0823
    Mar 5, 2020
    25
    openjdk version "1.8.0_242"
    OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_242-b08)
    OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.242-b08, mixed mode)
    ming7435
    ming7435
    Mar 5, 2020
    26
    1.8 能用 1 万年
    passerbytiny
    passerbytiny
    Mar 5, 2020
    27
    不需要调查,看下 spring boot 用得哪个就行了,目前的稳定版还是 8 : https://github.com/spring-projects/spring-boot/blob/2.2.x/spring-boot-project/spring-boot-parent/pom.xml

    master 的构建工具换 Gradle 了,这个我还不知道哪里看 java 版本。当然这也说明要准备从 Maven 切换 Gradle 了。
    chenyu0532
    chenyu0532
    Mar 5, 2020
    28
    偶数的不才是 LTS 么。。奇数的你们也用??
    nxforce
    nxforce
    Mar 5, 2020
    29
    @chenyu0532 java11 也是 LTS 啊
    beyondex
    beyondex
    Mar 5, 2020
    30
    查了一下,JDK 8 是 2012 年发布的?反正 Java 是服务端语言,升级也不困难,为何还有这么多停留在 8 的?
    geekvcn
    geekvcn
    Mar 5, 2020
    31
    @beyondex 首先 JAVA 不是服务端语言,什么端都能跑,你这点就有严重问题,其次,就算 JAVA 是服务端语言,就是因为是服务端,稳定第一,升级才需要做收益计算,如果升级不能带来收益,反而可能会导致不确定问题,鬼才升级,都是新项目用新版本,服务器上的老项目没人愿意动
    stevenkang
    stevenkang
    Mar 5, 2020 via Android
    32
    我司生产还在 1.6,准备今年升 1.8
    huntcool001
    huntcool001
    Mar 5, 2020
    33
    JDK 11 G1 默认开启后性能会提升一些吧. 其他感觉没啥必要.
    vitoliu
    vitoliu
    Mar 5, 2020
    34
    JDK8 的调优做到了么?如果没做到,升了 11 线上 GC 出问题了你去踩坑噢?
    yanyueio
    yanyueio
    Mar 5, 2020 via Android
    35
    @zzf2019 和这位大佬一样,用 open jdk8,但很多 jre 类库没有,需要 maven 自己引入。生产开发都是 8,虽然我了解 9,11。不明白用 11 开发,用 8 部署的,新的 feature 旧的运行时环境怎么兼容的?如果没有用到新 feature 那倒不如直接选 8 呢?
    dbpe
    dbpe
    Mar 5, 2020
    36
    j8 没调优...想升 j11
    BBCCBB
    BBCCBB
    Mar 5, 2020
    37
    @pzhdfy jdk11 里 clean 有啥新方法吗..
    BLF2
    BLF2
    Mar 5, 2020
    38
    用 11 开发,编译的时候可以使用 jdk8 标准编译,然后就可以在 jdk8 上运行了,我们旧系统环境是 jdk7,但开发都是用 jdk8,然后编译的时候选 jdk7,然后在 jdk7 上运行
    jelipo
    jelipo
    Mar 5, 2020
    39
    Java8 使用 OracleJDK,Java11 使用 AdoptOpenJDK,试了一些情景,OpenJDK 反而慢一点
    avalon0624
    avalon0624
    Mar 5, 2020
    40
    还在用 8, 一直是 OpenJDK
    xuanbg
    xuanbg
    Mar 6, 2020
    41
    @beyondex 怎么就不困难了。。。全部项目都要升级新版本 JDK,还要处理不知道多少兼容性问题。费时费力没什么眼面前看得到的收益,没人愿意干。

    怕的是哪个第三方库没有对应版本的话,那就真的是酸爽了。
    orm
    orm
    Mar 6, 2020
    42
    $ java -version
    openjdk version "11.0.6" 2020-01-14 LTS
    OpenJDK Runtime Environment Zulu11.37+17-CA (build 11.0.6+10-LTS)
    OpenJDK 64-Bit Server VM Zulu11.37+17-CA (build 11.0.6+10-LTS, mixed mode)
    lc7029
    lc7029
    Mar 6, 2020❤️1
    43
    生产仍然在用 1.4 路过。。。
    daveze
    daveze
    Mar 6, 2020 via iPhone
    44
    已升 11,生产用 openjdk,开发用 jdk。
    MakHoCheung
    MakHoCheung
    Mar 6, 2020
    45
    以后找下家公司薪资第二,是否用 java11 放第一
    huruwo
    huruwo
    Mar 6, 2020
    46
    jdk8 战未来
    leafre
    leafre
    Mar 6, 2020
    47
    JDK8
    nxforce
    nxforce
    Mar 6, 2020
    48
    自用 jdk11,生产环境 8,不过有时候会对新旧版本语言特性产生混乱,所以今年需要把环境统一成 11 了。况且目前 java8->java11 的迁移,对于大部分中小规模的项目暂时还是无痛的,早日转总比等到 jdk8 结束支持再转好吧!
    ZZSZZSZZS
    ZZSZZSZZS
    Mar 6, 2020 via iPhone
    49
    自用 OpenJDK,用的 vs 里带的那个版本
    Sendya
    Sendya
    Mar 6, 2020
    50
    我司一个高量的对外 websocket 服务上了 jdk11 其他都还是 8
    afirefish
    afirefish
    OP
    Mar 6, 2020
    51
    @ZZSZZSZZS vs 里面还内置了 jdk ????
    ZZSZZSZZS
    ZZSZZSZZS
    Mar 6, 2020 via iPhone
    52
    @afirefish 安装的时候不是可以选择哪些组件吗😂,还内置了安卓 sdk 和 ndk 呢
    afirefish
    afirefish
    OP
    Mar 6, 2020
    53
    @ZZSZZSZZS 看到了,是 android 用的 OpenJDK。。。我还以为 VS 能写 Java 了呢
    janxin
    janxin
    Mar 6, 2020
    54
    6,不用谢
    jingege
    jingege
    Mar 6, 2020
    55
    公司一般感觉都不太会升级吧。。。。因为也没有什么特别突出的特性让人有欲望升级的

    现在已经在用 go 了
    jimmyismagic
    jimmyismagic
    Mar 6, 2020
    56
    一直在用 8,之后的没学过,也不会用,哈哈
    zouqiang
    zouqiang
    Mar 6, 2020
    57
    openjdk 13
    DonaidTrump
    DonaidTrump
    Mar 6, 2020
    58
    Jetbrains,最新的 IDE 都是 openJDK11
    jhsea3do
    jhsea3do
    Mar 7, 2020
    59
    去年的项目要兼容 HPUX,AIX, 刚准备说 HPUX 最多支持到 JDK8, 结果翻了一下 HP 网页,居然发现对方来了一个飞跃性的突破...
    pzhdfy
    pzhdfy
    Mar 7, 2020
    60
    pzhdfy
    pzhdfy
    Mar 7, 2020
    61
    @BBCCBB
    不是新方法 而是 clean 的方法变了 没有兼容的代码直接拿到 jdk11 上运行会有 bug

    private static Cleaner lookupCleanerJava9(MethodHandles.Lookup lookup) throws ReflectiveOperationException
    {
    Class<?> cleaner = Class.forName("java.lang.ref.Cleaner");
    Class<?> cleanable = Class.forName("java.lang.ref.Cleaner$Cleanable");

    MethodHandle create = lookup.findStatic(cleaner, "create", MethodType.methodType(cleaner));

    Object theCleaner;
    try {
    theCleaner = create.invoke();
    }
    catch (Throwable t) {
    throw new RuntimeException("Unable to create cleaner", t);
    }

    MethodHandle register = lookup.findVirtual(
    cleaner,
    "register",
    MethodType.methodType(cleanable, Object.class, Runnable.class)
    ).bindTo(theCleaner);

    MethodHandle clean = lookup.findVirtual(cleanable, "clean", MethodType.methodType(void.class));

    return new CleanerImpl(register, clean);
    }

    private static Cleaner lookupCleanerJava8(MethodHandles.Lookup lookup) throws ReflectiveOperationException
    {
    Class<?> cleaner = Class.forName("sun.misc.Cleaner");
    MethodHandle register = lookup.findStatic(
    cleaner,
    "create",
    MethodType.methodType(cleaner, Object.class, Runnable.class)
    );

    MethodHandle clean = lookup.findVirtual(cleaner, "clean", MethodType.methodType(void.class));
    return new CleanerImpl(register, clean);
    }
    pzhdfy
    pzhdfy
    Mar 7, 2020
    62
    另外个人观点 如果现状稳定 没有需求不建议老项目升级 风险较大
    我们遇到的问题是我们进程的堆有 200G,是个计算和内存密集型程序,容易发生 full gc, 原来可能暂停几十秒,使用 jdk11 后并行 full gc 一般控制在 3s 内
    cheng6563
    cheng6563
    Mar 7, 2020 via Android
    63
    一直用的 centos 自带的 openjdk
    deef
    deef
    Mar 8, 2020
    64
    一直在用 JDK8, 感觉近几年要是没什么重要的问题应该都不会升了
    zzzmh
    zzzmh
    Mar 9, 2020
    65
    公司和自己都用 Openjdk8 感觉可以用到退休
    sunwei0325
    sunwei0325
    Mar 29, 2020
    66
    新版任你发, 我用 java8
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2559 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 170ms · UTC 14:49 · PVG 22:49 · LAX 06:49 · JFK 09:49
    ♥ Do have faith in what you're doing.