Разработчик(и) | Фонд «Эклипс» |
---|---|
Первоначальный выпуск | 4.0 / 29 марта 2016 г. ( 2016-03-29 ) | [1]
Стабильный релиз | 7.93.0 [2] / 11 октября 2024 г. ( 11 октября 2024 г. ) |
Репозиторий | github.com/eclipse/che |
Операционная система | Кроссплатформенность : Linux , Mac OS X , Solaris , Windows |
Платформа | Java SE |
Тип | Инструмент программирования , Интегрированная среда разработки (IDE) |
Лицензия | С версии 6.9.0: EPL-2.0 [3] До версии 6.8.0: EPL-1.0 |
Веб-сайт | www.eclipse.org/che |
Eclipse Che — это сервер рабочего пространства разработчика с открытым исходным кодом на основе Java и онлайн-IDE ( интегрированная среда разработки ). Он включает в себя многопользовательскую удаленную платформу разработки. Сервер рабочего пространства поставляется с гибким веб-сервисом RESTful . Он также содержит SDK для создания подключаемых модулей для языков, фреймворков или инструментов. [4] Eclipse Che — это проект верхнего уровня Eclipse Cloud Development (ECD), позволяющий сообществу пользователей вносить свой вклад. [5]
Эта статья содержит рекламный контент . ( Июль 2024 г. ) |
Eclipse Che был впервые анонсирован в октябре 2014 года. Один из его основных участников, Codenvy, предоставил технологический стек, на котором основан Che. [6] Идея облачной IDE и ее разработка появились в начале 2009 года у eXo Platform. После трех лет непрерывной разработки проект привлек 9 миллионов долларов и разработал отдельный бизнес под названием Codenvy. [7] После анонса проекта Che, включая пожертвование интеллектуальной собственности и участие в проекте Eclipse Cloud Development, началась разработка проекта Che. Сам Codenvy сегодня является коммерческим продуктом, созданным на основе Eclipse Che. [6] Сегодня есть много участников помимо Codenvy, таких как IBM , Red Hat , Samsung , SAP , Microsoft , Intuit , eXo Platform, WSO2 и Serli, а также многочисленные участники проектов с открытым исходным кодом из Бразилии, Канады, Китая, Франции, Индии, России, Шри-Ланки, Украины и Соединенных Штатов. [5]
Eclipse Che выпускается под лицензией Eclipse Public License , которая аналогична Common Public License . [8]
Название «Че» основано на том факте, что большая часть разработок ведется в Черкассах (Украина). [6]
По умолчанию поддерживаются следующие языки программирования и фреймворки: [9]
Категория | Поддерживать |
---|---|
Языки | C, C++, C#, F#, Go, Java, JavaScript, PHP, Python, Ruby, SQL, TypeScript [10] |
Фреймворки | AngularJS, Docker, .Net 2.0, Kubernetes, OpenShift, Yeoman |
Строители | Муравей, Бауэр, Грант, Глоток, Мавен, Нпм |
Инструменты | Git, Orion, SSH, Subversion |
Che сам по себе является сервером рабочей области, работающим на сервере приложений. Che предоставляет интегрированную IDE, которую можно использовать через браузер. После первоначальной загрузки IDE предоставляет динамический пользовательский интерфейс, включающий известные компоненты, такие как мастера, редакторы, панели инструментов и многое другое. Пользователь имеет возможность создавать рабочие области, проекты, среды, машины и многие другие модули, необходимые для создания проекта с нуля. Связь между пользовательским интерфейсом и сервером осуществляется с помощью RESTful API, которые взаимодействуют с так называемым Workspace Master. Одна рабочая область может включать ноль или более проектов и должна включать по крайней мере одну среду, которая сама содержит по крайней мере одну машину. Машина — это среда выполнения, в которой установлено необходимое программное обеспечение. Если пользователь добавляет, например, проект, который использует Apache Maven, Workspace Master устанавливает Maven на любую машину в рабочей области, чтобы гарантировать, что проект может быть выполнен на каждой машине. Che поставляется с некоторыми предопределенными стеками технологий для быстрой настройки новой машины. Чтобы обеспечить высокую гибкость и расширяемость, пользователь также может определять собственные стеки технологий, которые можно использовать для настройки новых машин. [4]
Eclipse Che — это Java-приложение, которое по умолчанию запускается на сервере Apache Tomcat . IDE, используемая внутри браузера, написана с использованием Google Web Toolkit . Che обладает высокой расширяемостью, поскольку предоставляет SDK, который можно использовать для разработки новых подключаемых модулей, которые можно объединять в так называемые сборки. Позже сборку можно запустить как автономное серверное приложение или настольный клиент с помощью включенных установщиков. Машины, на которых могут быть запущены проекты, управляются Docker . [4]
Che делит своих пользователей на три группы. Разработчики являются фактическими пользователями IDE. Это может быть либо путем доступа к удаленному серверу Che, либо путем запуска локального экземпляра Che. Владельцы продукта могут использовать Che для предоставления рабочих пространств по требованию. Поставщики подключаемых модулей могут разрабатывать либо клиентские IDE, либо подключаемые модули менеджера рабочих пространств на стороне сервера. [4]
Eclipse Che поставляется с большим количеством новых функций и гибкости: [11]
Поскольку Che — это серверное приложение, к нему могут одновременно обращаться несколько разработчиков. Каждый разработчик может подключиться к одному и тому же рабочему пространству с помощью IDE браузера. Сейчас Eclipse «Che реализует политику «последняя запись — победитель», когда несколько пользователей изменяют один и тот же файл». [13] В будущем выпуске планируется включить многокурсорные визуальные эффекты для обеспечения совместного многопользовательского редактирования одного файла. Рабочие пространства могут стать очень большими, поскольку в рабочее пространство может быть включено много машин. Если одного хоста уже недостаточно, рекомендуется предоставить собственный экземпляр Che для каждого пользователя или группы пользователей. Это означает, что у вас может быть много серверов, работающих с Che в одной экосистеме. Codenvy также предлагает масштабируемую экосистему, которая может быть установлена по требованию или может использоваться как SaaS. В будущих выпусках также планируется включить удаленные контейнеры Docker, чтобы пользователям не нужно было запускать все контейнеры на одном хосте. [13]