是什么使Java开源?


如果您使用Java编写业务应用程序,则可能知道Java Standard Edition(SE)不是开源软件。它不受Python或JavaScript等基金会的管理,并且在2019年1月,Oracle更改了其政策,要求从开发人员的本地环境到生产环境的任何SE使用都必须获得商业许可。

这一变化还在开源社区中引发了很多有关许可合规性和Java使用的问题。如果您仍然感到困惑,本文将指导您完成这些更改如何应用于Java开发人员。

Java社区中不断发展的平台

OpenJDK(开放Java开发工具包)是Java SE的免费开源实现。它是一种替代方法,它允许超过70%的Java开发人员在保留在开源生态系统中的同时继续稳定其Java应用程序环境。OpenJDK主要根据GNU GPLv2获得许可。这种分发策略所保证的自由度使OpenJDK成为Java开发人员构建与Java SE兼容的桌面应用程序的默认选择。

Oracle继续开发和维护基于Java SE平台构建的Enterprise Java(Java EE)。Java EE包括SE范围之外的其他功能,以支持用于各种企业环境的大规模,可伸缩,多层和受保护的应用程序。2017年9月,Java EE平台被移交给Eclipse Foundation,从而导致采用更多敏捷流程,更改治理流程并实施更灵活的许可。一年后的2018年,Eclipse Foundation宣布了一个新品牌Jakarta EE,带有新徽标和工作组,以支持开发人员从Java EE过渡到新平台。从Java EE到Jakarta EE的演进也影响了许多企业Java开发人员实施新的业务逻辑。

随着Java的发展而发展的框架

同时,RESTful API(2000),HTTP2(2015)和JSON(2017)等新技术正在与快速变化的Web体系结构一起开发。对微服务体系结构的兴趣正在增长,但是由于Java EE正在过渡中,因此在这些新范式发生时并没有接受。

作为响应,更广泛的Java社区和多家供应商(IBM,Red Hat和Tomitribe)在2016年创建了MicroProfile,以针对微服务架构优化企业Java平台。MicroProfile之后加入了Eclipse Foundation,为企业Java开发人员提供了两种实现微服务架构的选择:SpringBoot或MicroProfile。MicroProfile允许开发人员跨供应商解决方案创建可移植的基于Java的微服务,同时确保同一应用程序中匹配的Java / Jakarta EE和MicroProfile API之间的兼容性。

如果您对Enterprise Java开发感兴趣,那么MicroProfile Starter是在实践中探索微服务的绝佳资源。MicroProfile Starter的图形用户界面需要一些细节来生成代码以创建整体Java应用程序服务器。

MicroProfile运行时支持部署应用程序工件(例如JAR或WAR文件)并将其作为具有MicroProfile规范的Java应用程序服务器执行。您可以从MicroProfle Starter的运行时列表中选择所需的云原生运行时(例如Quarkus),然后选择规格以获得其他企业功能,例如容错,OpenAPI,OpenTracing等。完成这些步骤后,单击“下载”以开始开发您的应用程序。

MicroProfile入门

microprofile.png

结论 考虑到Java的悠久历史,获得和许可,从开放源代码的角度浏览Java可能会有些混乱。坚持使用OpenJDK和Jakarta EE可以使Java开发人员维护标准的企业应用程序,而不会损害开源自由。如果您想进一步研究,请查看MicroProfile或通过研究Quarkus深入研究运行时。


原文链接:http://codingdict.com