Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >玩转腾讯Kona JDK的N种姿势

玩转腾讯Kona JDK的N种姿势

作者头像
腾讯开源
发布于 2025-05-17 02:52:03
发布于 2025-05-17 02:52:03
21100
代码可运行
举报
运行总次数:0
代码可运行

腾讯Kona JDK

腾讯Kona JDK(后文简称为Kona)是腾讯的OpenJDK发行版。它基于腾讯内外部的海量业务,针对大数据,云计算,机器学习和安全等多个领域进行了广泛扩展与深度优化。该发行版支持OpenJDK的全部长期支持(LTS)版本,包括8,11,17和21。它还支持主流的操作系统平台,包括Linux x64,Linux aarch64,Windows x64,macOS x64和macOS aarch64。获悉更多信息,请访问Kona的GitHub主页:https://tencent.github.io/konajdk

如何获取

从GitHub下载

Kona的开源仓库主要是在GitHub Tencent帐户下。它的4个LTS版本分别对应4个仓库,地址分别是:

https://github.com/Tencent/TencentKona-8

https://github.com/Tencent/TencentKona-11

https://github.com/Tencent/TencentKona-17

https://github.com/Tencent/TencentKona-21

用户可以在这些仓库的releases页面中找到对应各个平台和格式的二进制文件,例如,https://github.com/Tencent/TencentKona-8/releases

从cnb.cool下载

出于对中国用户可能无法访问GitHub的担忧,Kona在cnb.cool上备份了代码仓库,地址分别是:

https://cnb.cool/tencent/TencentKona/TencentKona-8

https://cnb.cool/tencent/TencentKona/TencentKona-11

https://cnb.cool/tencent/TencentKona/TencentKona-17

https://cnb.cool/tencent/TencentKona/TencentKona-21

类似地,二进制文件也对应地列在了上述仓库的releases页面中,例如,

https://cnb.cool/tencent/TencentKona/TencentKona-8/-/releases

通过Docker镜像

除了直接下载Kona的二进制文件,拉取已预安装了Kona二进制文件的Docker镜像也是一种常用的获取Kona的方式。

目前仅提供了Kona 8和11的Docker镜像,支持了腾讯的Linux发行版TencentOS Server(TS)和Alpine Linux,以及CPU架构x86_64和aarch64。例如,下面的命令会拉取基于TS且CPU架构为x86_64的Kona 8镜像。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ docker pull konajdk/konajdk:8-tlinux

关于Kona Docker镜像的详细信息,请查看DockerHub:https://hub.docker.com/r/konajdk/konajdk/tags

通过SDKMAN下载

SDKMAN是一个流行的SDK安装与管理工具。它支持各种SDK,包括多种OpenJDK发行版,也支持Kona。由于Kona有4个LTS版本,而每个LTS版本在每个季度又会发布更新版本,这使得发布版本众多。而开发中经常需要安装多个不同的版本,且会在不同的版本之间切换使用。使用SDKMAN来安装和管理Kona就不需要关注过多的细节,在不同的版本之间切换使用也十分简单。

先通过下面的命令列出已发布的Kona版本,

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sdk list java | grep kona
 Tencent       |     | 21.0.7       | kona    |            | 21.0.7-kona
...
               |     | 17.0.15      | kona    |            | 17.0.15-kona
...
               |     | 11.0.27      | kona    |            | 11.0.27-kona
...
               |     | 8.0.452      | kona    |            | 8.0.452-kona
...

然后使用下面的命令去安装指定的版本(如Kona 17.0.15),

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sdk install java 17.0.15-kona
...
Do you want java 17.0.15-kona to be set as default? (Y/n): Y
Setting java 17.0.15-kona as default.

再次列出Kona版本时会发现已经安装了Kona 17.0.15,并且它被设置为当前默认版本。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Tencent       |     | 21.0.7       | kona    |            | 21.0.7-kona
...
               | >>> | 17.0.15      | kona    | installed  | 17.0.15-kona
...

SDKMAN实际上还是下载的Kona GitHub仓库releases页面展示的二进制文件。关于SDKMAN的使用细节,请参考官方文档:https://sdkman.io/usage

在平台/工具中使用

在GitHub Actions中使用

GitHub官方提供了一个称之为Actions的CI/CD平台,它允许开发者基于GitHub仓库自动化地执行构建、测试、部署等任务,其核心要素是Workflow(工作流配置)和Action(可复用的任务单元)。该平台被GitHub上的开源项目广泛应用。腾讯内外的一些开源项目在开发时是基于Kona,其中还会使用到Kona的独有特性,比如国密算法与协议。这就要求能够在Actions平台中使用Kona。为此,腾讯向GitHub Marketplace发布了一款名为setup-tencent-kona的Action实现。

setup-tencent-kona是对GitHub官方Action setup-java的扩展,所以它的使用方式与setup-java完全相同。下面是两个示例,

● 示例1:使用Kona 8的最新版本

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
steps:
- name: Setup Kona JDK
  uses: Tencent/setup-tencent-kona@v4
  with:
    distribution: 'kona'
    java-version: 8

●示例2:使用Kona全部LTS版本的最新版本

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
strategy:
matrix:
  java-version: [8, 11, 17, 21]
steps:
- name: Setup Kona JDK
  uses: Tencent/setup-tencent-kona@v4
  with:
    distribution: 'kona'
    java-version: ${{ matrix.java-version }}

关于更详细的使用方法,请参考文档:

https://github.com/Tencent/setup-tencent-kona/blob/main/docs/advanced-usage.md

在Gradle Toolchain中使用

默认情况下,若使用某个JDK去运行Gradle,Gradle就会用这个JDK去执行Java工程中的各类任务,比如编译和测试。但在遇到如下场景时,这种工作方式就对开发者不友好了。

● 同一个环境中存在多个Gradle工程,它们依赖于不同的Java语言版本,甚至是不同的JDK发行版。在对这些工程执行Gradle任务时,需要经常切换当前环境中的JDK,比如修改环境变量JAVA_HOME的值。

● 即便只有一个Gradle工程,若它声明能够同时支持多个Java语言版本和JDK发行版,比如OpenJDK和Kona的版本8,11和17。那么它就需要针对所有受支持的Java语言版本和JDK发行版进行测试。

为了缓解上述痛点,Gradle引入了称之为Toolchain的特性。该特性不仅支持了国际流行的OpenJDK发行版,也支持了Kona。具体地,它为Kona分配了常量JvmVendorSpec.TENCENT。

先使用下面的命令列出可以使用的JDK发行版,

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ gradle javaToolchains
...
...
 + Eclipse Temurin JDK 11.0.23+9
     | Location:           /path/to/.sdkman/candidates/java/11.0.23-tem
     | Language Version:   11
     | Vendor:             Eclipse Temurin
     | Architecture:       aarch64
     | Is JDK:             true
     | Detected by:        SDKMAN!
...
 + Tencent JDK 17.0.15+1-LTS
     | Location:           /path/to/.sdkman/candidates/java/17.0.15-kona
     | Language Version:   17
     | Vendor:             Tencent
     | Architecture:       aarch64
     | Is JDK:             true
     | Detected by:        Current JVM
...

在Gradle工程脚本中使用Toolchain API,指定在不同的构建阶段使用不同的JDK发行版。

下面的语句指定了使用Kona 11作为编译器,那么就会使用一个本地的Kona 11版本去编译源代码。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
javaCompiler = javaToolchains.compilerFor {
    languageVersion = JavaLanguageVersion.of(11)
    vendor = JvmVendorSpec.TENCENT
}

下面的语句指定了使用Kona 17作为执行器,那么就会使用一个本地的Kona 17版本去执行应用或测试程序。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
javaLauncher = javaToolchains.launcherFor {
    languageVersion = JavaLanguageVersion.of(17)
    vendor = JvmVendorSpec.TENCENT
}

关于Gradle Toolchain更详细的用法,请参考官方文档:https://docs.gradle.org/current/userguide/toolchains.html

后记

自发布以来,Kona始终处于良好的维护状态,一直能够保证按计划发布季度更新版本。这些版本既包含了特性增强,也包含了安全漏洞与缺陷补丁。

Kona拥有一支包含有多位OpenJDK Reviewer,Committer和Author的技术团队。该团队秉承着技术服务业务的理念,持续在安全性,稳定性,高性能和可维护性方面积极探索并稳步推进。在OpenJDK最新的14个版本(11至24)的累积贡献量统计中,Kona团队稳居世界前六,中国第一。

欢迎到Kona的各个GitHub仓库中提需求,开Bug,聊发展。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-05-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 腾讯开源 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
腾讯Kona JDK获得中国软件评测中心权威认证
腾讯Kona JDK(后文仅使用简称Kona)是腾讯公司的OpenJDK发行版,凝聚了腾讯在Java与JDK生态中的技术沉淀。它已在腾讯内外的海量业务中广泛生产落地,在大数据,云计算,游戏等诸多关键业务领域均有部署,并在性能,安全性和稳定性等方面取得了可见的优异表现。作为腾讯Java生态的基石底座,Kona使得该公司能够根据内部业务与外部用户的实际需求,灵活地掌握各个长期支持(Long-Term Support)版本的维护周期,并在防范国外商业版本JDK的巨额收费风险中启到了至关重要的作用。
腾讯大数据
2025/06/11
100
腾讯Kona JDK获得中国软件评测中心权威认证
腾讯牛逼!终于开源了自家的 Tencent JDK——Kona!!
是的,继阿里 2019/03 开源基于 OpenJDK 的长期支持版本 Alibaba Dragonwell 之后,腾讯也发布了自家的开源免费的 JDK 版本——Tencent Kona,必须替小马哥宣传一波。
Java技术栈
2020/12/08
3.5K0
腾讯牛逼!终于开源了自家的 Tencent JDK——Kona!!
头条!Tencent Kona JDK11 正式开源,提升 50% 峰值性能!
导读 Tencent Kona JDK11正式开源,腾讯云与大数据团队将持续贡献Java生态发展。 Github 开源地址: https://github.com/Tencent/TencentKona-11 概述 3月8日,腾讯宣布将 Tencent Kona JDK11 正式开源,向社区分享经过内部超大规模生产环境验证的定制 JDK,该版本在启动性能、峰值性能以及事物处理能力方面,相对于前一版本 Kona JDK8 都有了综合性提升,沉淀了腾讯云与大数据团队在大数据/机器学习、云原生场景
腾讯云中间件团队
2021/03/24
1K0
发布setup-tencent-kona:在GitHub上玩转Kona JDK
setup-tencent-kona是一个GitHub Action的实现,开发者可在GitHub Actions/Workflow平台中快速接入和使用Tencent Kona JDK。
腾讯开源
2025/03/19
1380
发布setup-tencent-kona:在GitHub上玩转Kona JDK
JDK16贡献榜公布,腾讯Kona JDK蝉联全国第一
导读 / Introduction 3月16日,JDK16正式对外发布。据Oracle官方公告,腾讯Kona JDK团队蝉联JDK16中国企业贡献度排名第一,并再次作为全球Notable贡献者被Oracle点名致谢。 作为Java标准版最主流的参考实现之一,目前国际上众多顶级科技公司基于OpenJDK开源项目研发了多种JDK发行版,腾讯Kona JDK便是其中颇具特色的发行版之一。 在最新发布的JDK16中,针对最引人注目的Java新特性Vector API,腾讯Kona JDK通过内部广告大数据/
腾讯大数据
2021/03/23
1.2K0
Tencent Kona JDK11正式开源,腾讯大数据将持续贡献Java生态发展
3月8日,腾讯宣布将Tencent KonaJDK11正式开源,向社区分享经过内部超大规模生产环境验证的定制JDK,该版本在启动性能、峰值性能以及事物处理能力方面,相对于前一版本Kona JDK8都有了综合性提升,沉淀了腾讯大数据团队在大数据/机器学习、云原生场景下的深度优化,并且通过了JCK验证,确保充分的Java SE标准兼容。 除了在开源社区开放使用外,TencentKona JDK11也会在腾讯云上免费提供,为云上用户的Java应用注入高效动能。另一方面,通过自身产品采用Kona JDK,腾讯云
腾讯开源
2021/03/09
1.7K0
腾讯Kona JDK数据科学实践
导语:开源操作系统年度技术会议(Open Source Operating System Annual Technical Conference,简称 OS2ATC)已经连续成功举办了八届。该会议旨在促进我国操作系统及其相关领域的教学、研究与产业发展,加强学术交流,展示产业界成果,是中国地区颇具规模的技术盛会。 第八届OS2ATC大会于2020年12月27日,在北京中科院计算技术研究所举行。在”编程技术”分会上,腾讯高级工程师傅杰博士发表了《Kona JDK数据科学实践》的演讲。以下为演讲实录: 大家
腾讯大数据
2021/01/12
1.3K1
重磅,腾讯发布最新开源jdk!
Kona 是由腾讯专业 JVM 技术团队维护开发的,基于 OpenJDK 的,提供长期支持并按季度更新的JDK发行版本。Kona 目前作为默认 JDK 应用于腾讯云业务场景及其他Java应用场景。Kona 基于 OpenJDK,同时提供了更多的功能拓展及维护。通过腾讯 Kona,用户可以获得更为先进的功能及性能优化,提高用户和开发者的使用体验。目前,腾讯Kona仅支持Linux x86-64 位系统.
肉眼品世界
2020/12/17
6120
Oracle 慌了!华为开始对 JDK 下手了!
近日有开发者在华为 openEuler操作系统源码中发现了华为的 OpenJDK 发行版,名为“毕昇 JDK 8(bishengjdk-8)”。
逆锋起笔
2020/11/30
7460
Oracle 慌了!华为开始对 JDK 下手了!
Tencent Kona:OpenJDK贡献全国四连冠,赋能数据科学计算加速
[ 导语 ] 2022年3月22日,JDK18正式对外发布。据Oracle官方公告[1],腾讯Kona 蝉联JDK18中国企业贡献排名第一,连续四次对OpenJDK贡献全国排名第一(JDK15~18)[1][2][3][4]。本文将介绍Kona在高性能计算引擎方面对OpenJDK社区的贡献。 ▍Kona:连续四次全国冠军,综合贡献全国第一 Kona是腾讯基于OpenJDK研发的JDK产品,Kona JDK完全免费,并提供长期支持,所发版本均通过腾讯内部和云上超大规模应用验证,欢迎下载使用。 2019年:首次
腾讯大数据
2022/03/31
8970
Tencent Kona:OpenJDK贡献全国四连冠,赋能数据科学计算加速
开源公告|腾讯Kona国密套件对外开源
2022年9月19日,腾讯宣布腾讯Kona国密套件正式开源。腾讯Kona国密套件基于JDK的标准JCA,PKI和JSSE的SPI接口实现了从基础算法簇,到公钥基础设施,再到安全通信协议的全链路国密特性。 主要特性 1. 实现了国密基础算法簇 - SM2,包括签名算法(GB/T 32918.2-2016),密钥交换算法(GB/T 32918.3-2016)和加密算法(GB/T 32918.4-2016)。 - SM3,包括哈希算法(GB/T 32905-2016)和基于哈希的消息验证码算法(HMAC)。
腾讯开源
2022/09/22
3.5K0
开源公告|腾讯Kona国密套件对外开源
微服务云原生等场景,腾讯 Kona JDK 正式开源
Tencent Kona 是基于 OpenJDK8,由腾讯专业技术团队提供技术维护、优化及安全保障的 JDK 产品。腾讯的 Java 应用场景丰富,结合微服务、云原生应用、大数据等实际应用场景进行开发,并于11月5日正式发布了优化后的JDK——Tencent Kona。Kona可为上述场景提供最优的 Java 生产环境及解决方案,并为开发者开发的 Java 应用提供平滑的迁移。目前,Kona为腾讯微服务平台 TSF、 腾讯 TBDS 大数据套件、腾讯 TI 智能钛机器学习平台等提供了稳定保障。 Ko
腾讯开源
2019/11/08
1.9K0
微服务云原生等场景,腾讯 Kona JDK 正式开源
Tencent JDK 国产化CPU架构支持分享
GIAC(GLOBAL INTERNET ARCHITECTURE CONFERENCE)是长期关注互联网技术与架构的高可用架构技术社区和msup推出的,面向架构师、技术负责人及高端技术从业人员的年度技术架构大会,是中国地区规模最大的技术会议之一。 今年的第六届GIAC大会上,在大数据架构进化中的JAVA专题,腾讯高级工程师傅杰博士发表了《Tencent JDK 国产化CPU架构支持分享》的主题演讲。以下为嘉宾演讲实录: 尊敬的各位来宾,大家下午好!很高兴有机会跟大家一起分享Tencent J
腾讯技术工程官方号
2020/08/31
1.7K0
腾讯蝉联JDK17贡献国内第一,自研Kona JDK两大新版本正式开源
导读 / Introduction 2021年9月14日,Oracle 正式对外发布新的长期支持版本JDK17。据Oracle官方公告,腾讯Kona JDK再次蝉联JDK17中国企业贡献度排名第一,全球企业贡献度排名第四。在积极参与社区贡献的同时,腾讯继Tencent Kona JDK8、Tencent Kona JDK11开源之后,再次开源Tencent Kona JDK17 以及Tencent Kona JDK11 向量计算版。 积极社区贡献 KonaJDK 9月14日,JDK17正式对外发布。据
腾讯开源
2021/11/10
1.2K0
KonaJDK 8 新版本更新,国密算法轻松用
导读 | TencentKona 是腾讯开源的可立即投入生产的 OpenJDK 发行版,在主流 OpenJDK8 的基础上进行了针对性的开发和优化。本次 TencentKona 8 版本更新到 8.0.4, 在同步到社区版本 8u272 的基础上,新增了哪些激动人心的特性?本文将为一一介绍。文章作者:臧琳,腾讯云中间件 JVM 工程师。 一、国密SM2/SM3/SM4算法支持 随着国密算法等商密算法国家标准的推出,云上客户对于 Java 版本的国密算法需求越来越多。KonaJDK8 内置了国密算法的
腾讯云开发者
2021/03/08
1.7K0
开源项目介绍|Tencent Kona JDK-腾讯JDK发行版
腾讯KonaJDK是OpenJDK的发行版,并且针对大数据,机器学习和云计算等场景进行了独特的优化,在高性能及安全性方面多有建树。腾讯KonaJDK团队拥有多位OpenJDK Reviewer,Committer和Author,在国内JDK团队中首屈一指。而OpenJDK开源社区活跃且成熟,它的协作模式也是开源项目中的典范,无论对于初识的爱好者,还是长期的贡献者都十分友好。参与OpenJDK的开发,不仅可以领略世界级基础软件的设计理念与实现细节,还可以积累开源项目的贡献经验。
腾讯开源
2023/07/16
1.7K0
开源项目介绍|Tencent Kona JDK-腾讯JDK发行版
JDK16 正式版发布,网友:别更新了,学不动了~
3 月 16 日,OpenJDK 官网如期公布了 JDK 16 GA 版本。与 Java 15 一样,该版本的支持时间只有 6 个月。
终码一生
2022/04/14
7240
JDK16 正式版发布,网友:别更新了,学不动了~
腾讯Kona国密套件:从基础算法到安全协议
腾讯Kona国密套件(Tencent Kona SM Suite)基于JDK的标准Service Provider Interface(SPI)实现了从基础算法簇,到公钥基础设施(PKI),再到安全通信协议的全链路国密特性。该套件已在GitHub上开源:https://github.com/Tencent/TencentKonaSMSuite(点击阅读原文) 腾讯Kona国密套件包含四个Java Security Provider: KonaCrypto,它是一个Java Cryptography Exte
腾讯大数据
2022/11/30
5.6K0
腾讯Kona国密套件:从基础算法到安全协议
JDK/Java 16 可能带来什么新特性?
JDK 15 已于今年 9 月 15 日发布,这是一个短期版本,只会受到 Oracle 6 个月的支持。JDK 16 将作为标准 Java 版本的参考实现在 2021 年 3 月 16 日发布。与 JDK 15 一样,JDK 16 也将是个短期版本,仅提供 6 个月的支持。预计于 2021 年 9 月发布的 JDK 17 将是一个长期支持(LTS)版本,会获得数年的支持。目前的 LTS 版本 JDK 11 则于 2018 年 9 月发布。
张哥编程
2024/12/19
880
KonaJDK – 赋能腾讯云上Java生态
导语:JDK作为Java应用的基础设施,在云Java生态上的重要性不言而喻。KonaJDK作为Tencent自研JDK, 已经平稳支撑于腾讯云微服务,消息中间件,大数据等核心业务,同时在信创等场景上作为Java业务的基础支撑组件,填补了腾讯云信创场景下JDK组件的空白。 本文将主要从KonaJDK在信创云环境支撑,KonaJDK支持腾讯云产品的能力拓展与定制化以及KonaJDK在大数据场景的优化实践几个方面,介绍KonaJDK对于腾讯云Java业务的支撑与优化。 KonaJDK 信创环境支撑 信创云环境中
腾讯大数据
2020/11/02
2.2K0
推荐阅读
相关推荐
腾讯Kona JDK获得中国软件评测中心权威认证
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验