如何将库的源更新到现代 java 版本,同时仍然与 java 8 兼容?

发布于 2025-01-10 20:01:52 字数 216 浏览 0 评论 0原文

我们正在维护一个 java 库,我们的大多数客户仍在使用 java 8。由于 java 8 变得有点生疏,我们希望能够在编译时使用较新 java 版本(例如 java 17)的新语言功能,而不关闭老客户。有没有可能实现这一目标?

准确地说:我只想使用新的语言功能,例如var,而不是新的API

图书馆馆长通常如何处理这个问题?

We are maintaining a java library and the majority of our customers is still using java 8. Since java 8 is getting a bit rusty, we would like to be able to use new language features of newer java versions, say java 17, at compile time, without shutting older customers down. Is there any possibility to achieve this?

To be precise: I only want to use new language features like var, not new APIs.

How do library-owners usually deal with this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

走过海棠暮 2025-01-17 20:01:52

一种解决方案是为 JDK 17 发布库的新主要版本,并为使用的客户端保留当前主要版本JDK 8。然后,您将不得不维护这两个版本一段时间,直到您最重要的客户本身迁移到 JDK 17。

当您想要发布新功能时,您可以为两个主要版本中的每一个使用一个新的次要版本。

One solution is to release a new major version of your library for JDK 17, and keep the current major version for clients using JDK 8. You would then have to maintain both versions for a while, until your most important customers have migrated to JDK 17 themselves.

When you want to release new features, you would then use a new minor version for each of the two major versions.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文