Eclipse Che简介

EclipseChe是一个Kubernetes-原生IDE和开发人员协作平台。作为一个开源项目,EclipseChe的核心目标是:加速项目和开发人员的上岗:作为一个在浏览器中运行的零安装开发环境,EclipseChe使任何人都能很容易地加入您的团队并为项目做出贡献。消除开发人员环境之间的不一致:不再:“但它在我的机器上工作。”在每个人的环境中,您的代码的工作方式完全一样。提供内置安全和企业准备:随着EclipseChe成为VDI解决方案的可行替代品,它必须是安全的,并且必须支持企业需求,例如基于角色的访问控制和从开发人员机器中删除所有源代码的能力。为了实现这些核心目标,EclipseChe提供了:工作区:基于容器的开发人员工作区,提供编写、构建、测试、运行和调试应用程序所需的所有工具和依赖关系。基于浏览器的IDE:将基于浏览器的IDE与语言工具、调试器、终端、VCS集成等捆绑在一起.可扩展平台:带上您自己的IDE。通过使用与VisualStudio代码扩展兼容的插件,定义、配置和扩展应用程序所需的工具。企业集成:多用户功能,包括用于身份验证和与LDAP或AD集成的Keycloak。

它提供:

  • 运行在Kubernetes多容器工作区上的集中式开发环境
  • 每个开发人员只需单击一次就可以通过EclipseChe工厂预建堆栈进行复制
  • 可以通过基于AD/LDAP浏览器的IDE通过Keycloak为任何语言或运行时企业集成创建自定义堆栈
  • 与Che-Theia或任何其他Web IDE(如Jupyter)集成
  • 支持最新的工具协议:Language Server Protocol,Debug Adapter Protocol
  • 插件-in机制,兼容VisualStudio代码扩展
  • SDK用于创建自定义云开发平台

开始使用EclipseChe

  • 遵循在计算机上本地安装EclipseChe的快速启动指南
  • 了解有关EclipseChe的更多信息:EclipseChe和体系结构概述
  • 发现EclipseChe功能

如果有兴趣加入社区的团体

通过以下渠道加入我们:公共聊天:加入公共EclipseCheMatterest频道与开发人员聊天。GitHub项目存储库:报告bug、请求特性,并在主EclipseChe存储库中做出贡献。改进EclipseChe文档存储库中的文档。支持:访问StackOverflow以帮助EclipseChe的其他用户:StackOverflow上的EclipseChe。社区博客:了解EclipseChe的最新情况,并将您的博客文章提交到EclipseChe博客。每两周一次的会议:每隔一个星期一加入我们的社区会议。路线图:请参阅wiki上的开发路线图

工作区模型

Che将工作区定义为项目代码文件及其编辑、构建、运行和调试它们所需的所有依赖项。Che将IDE和开发运行时视为工作区的依赖项。这些项是嵌入的,并且始终包含在工作区中。这区别于经典的工作区定义,后者可能包括项目代码,但要求开发人员将他们的IDE绑定到他们的工作站,并使用它在本地提供运行时。工作区彼此隔离,负责管理其组件的生命周期。使用EclipseChe的开发人员直接在他们的开发人员工作区中使用他们的容器。CHE工作区是Kubernetes吊舱,允许复制生产中使用的应用程序运行时(及其微服务),并在其之上提供“dev模式”层,添加IntelliSense和IDE工具。

基于浏览器的IDE

EclipseChe为其工作区提供基于浏览器的IDE。默认IDE构建在Theia上,它具有以下功能:基于摩纳哥的编辑器:快速响应的编辑器:CodeLens语言服务器协议:语言工具调试适配器协议:调试器工具命令调试器:从键盘任务支持完成一切:扩展VisualStudio代码中的任务并支持Che命令嵌入式预览:直接从IDE预览应用程序,包括Markdown预览可定制布局:使用拖放和更多:大纲视图、搜索、Git

对于Eclipse Che中不同用例的不同IDE

IDE是完全解耦的,因此可以将不同的IDE插入到Che工作区中:它可以基于Eclipse Theia(因为它是构建Web IDE的框架),例如Sirius:它可以是一个完全不同的解决方案,比如木星或Eclipse diritable:对于默认IDE不涵盖用户的用例或使用专用工具而不是IDE的情况,它可以是一种完全不同的解决方案。

可扩展平台

EclipseCe是构建云本地工具的一个很好的平台,它为贡献者提供了一个具有愉快的开发经验的强大可扩展性模型。 Eclipse Che可以以不同的方式扩展:

  • 插件以向IDE添加功能。Che-Theia插件依赖于与Visual Studio代码兼容的API。插件被隔离,并在容器中提供自己的依赖项。
  • 堆栈以使用专用工具集创建预先配置的Che工作区。
  • 替代IDE在EclipseCe中提供专门的工具。建立自己的,基于Eclipse Theia,或选择现有的,如Jupyter。
  • 市场(很快),方便分发工具和自定义IDE,可以在网上尝试,给用户和社区。 EclipseChe使用Che-Theia作为默认的基于浏览器的IDE。Theia提供了一个构建WebIDE的框架。它是在TypeScript中构建的,并为贡献者提供了一个灵活的编程模型,它依赖于最先进的工具协议,并使构建新工具的速度更快。

在EclipseCe中,在用户工作区中运行的工具所需的依赖项在需要时可用。这意味着Che-Theia插件提供其依赖项、其后端服务(可以在连接到用户工作区的Sidecar容器中运行)和IDEUI扩展。切将所有这些元素打包在一起,这样用户就不必一起配置不同的工具。

VisualStudio代码扩展兼容性

EclipseCHE将为希望构建插件并将其分发到不同的开发人员社区和工具的贡献者的努力合理化。为此,EclipseCHE的功能是插件API,与VisualStudio代码的扩展点兼容。因此,轻松将现有插件从VisualStudio代码带入EclipseCHE。主要区别在于插件的封装方式。在EclipseCHE上,插件在其自身的容器中具有它们自己的依赖关系。

企业集成

EclipseChe包括Keycloak来处理身份验证和安全性。它允许与任何单一登录(SSO)以及ActiveDirectory或LDAP集成。每个EclipseChe用户都可以获得一个可以轻松定义、管理和管理的集中式开发人员工作区。作为一个Kubernetes本机应用程序,EclipseChe与Prometheus和Grafana集成,提供了最先进的监视和跟踪功能。