Экран приветствия Eclipse 4.12 | |
Автор (ы) | IBM |
---|---|
Разработчик (и) | Eclipse Foundation |
Первоначальный выпуск | 1.0 / 7 ноября 2001 г.; 18 лет назад (2001-11-07) |
Стабильный выпуск | 4.17 (выпуск 2020-09) / 16 сентября 2020 г.; 38 дней назад (16.09.2020) |
Предварительный выпуск | 4.18 (выпуск 2020-12) |
Репозиторий | |
Написано на | Java и C |
Операционная система | Linux, macOS, Windows |
Платформа | Java SE, Standard Widget Toolkit, x86-64 |
Доступно на | 44 языках |
Список языков Албанский, арабский, баскский, болгарский, каталонский, китайский (упрощенный, традиционный), Чешский, датский, голландский, английский (Австралия, Канада), эстонский, финский, французский, немецкий, греческий, иврит, хинди, венгерский, индонезийский, итальянский, японский, клингонский, корейский, курдский, литовский, малаялам, монгольский, мьянма, Непальский, норвежский, персидский, польский, португальский (Португалия, Бразилия), румынский, русский, сербский, словацкий, словенский, испанский, шведский, тайский, турецкий, украинский, вьетнамский | |
Тип | Инструмент программирования, интегрированная среда разработки (IDE) |
Лицензия | Общественная лицензия Eclipse |
Веб-сайт | www.eclipse.org |
Eclipse - это интегрированная среда разработки (IDE), используемая в компьютерном программировании. Он содержит базовую рабочую область и расширяемую систему плагинов для настройки среды. Eclipse написан в основном на Java и в основном используется для разработки приложений Java, но его также можно использовать для разработки приложений на других языках программирования через плагины, включая Ada, ABAP, C, C ++, C#, Clojure, COBOL, D, Erlang, Fortran, Groovy, Haskell, JavaScript, Julia, Lasso, Lua, NATURAL, Perl, PHP, Prolog, Python, R, Ruby (включая фреймворк Ruby on Rails ), Rust, Scala и Схема. Его также можно использовать для разработки документов с помощью LaTeX (через плагин TeXlipse) и пакетов для программного обеспечения Mathematica. Среды разработки включают, среди прочего, инструменты разработки Eclipse Java (JDT) для Java и Scala, Eclipse CDT для C / C ++ и Eclipse PDT для PHP.
Первоначальная кодовая база произошла от IBM VisualAge. Комплект разработки программного обеспечения Eclipse (SDK), который включает инструменты разработки Java, предназначен для разработчиков Java. Пользователи могут расширять его возможности, устанавливая плагины, написанные для платформы Eclipse, например, наборы инструментов разработки для других языков программирования, а также могут писать и вносить свои собственные подключаемые модули. С момента появления реализации OSGi (Equinox ) в версии 3 Eclipse подключаемые модули могут быть подключены-остановлены динамически и называются (OSGI) пакетами.
Eclipse комплект разработки программного обеспечения (SDK) - это бесплатное программное обеспечение с открытым исходным кодом, выпущенное в соответствии с условиями общественной лицензии Eclipse, хотя оно несовместимо с Стандартная общественная лицензия GNU. Это была одна из первых IDE, работающих под GNU Classpath, и она без проблем работает под IcedTea.
Eclipse был вдохновлен с помощью семейства Smalltalk VisualAge продуктов интегрированной среды разработки (IDE). Несмотря на то, что продукты VisualAge были достаточно успешными, их основным недостатком было то, что разработанный код не соответствовал модели разработки программного обеспечения на основе компонентов. Вместо этого весь код проекта хранился в сжатом куске (что-то вроде zip-файла, но в проприетарном формате под названием.dat). Доступ к отдельным классам был затруднен, и уж тем более вне инструмента. Команда, которая работала в лаборатории IBM Cary NC, разработала новый продукт как замену на основе Java. В ноябре 2001 года был сформирован консорциум с советом управляющих для дальнейшего развития Eclipse как программного обеспечения с открытым исходным кодом. Предполагается, что к тому времени IBM уже инвестировала около 40 миллионов долларов. Первоначальными участниками были Borland, IBM, Merant, QNX Software Systems, Rational Software, Red Hat, SuSE, TogetherSoft и WebGain. К концу 2003 года количество стюардов увеличилось до более чем 80. В январе 2004 года была создана Eclipse Foundation.
Eclipse 3.0 (выпущенная 21 июня 2004 года) выбрала OSGi Спецификации сервисной платформы в качестве архитектуры среды выполнения.
Association for Computing Machinery 26 апреля 2012 года вручила Eclipse награду ACM Software Systems Award.
Общественная лицензия Eclipse (EPL) - это основная лицензия, по которой выпускаются проекты Eclipse. Для некоторых проектов требуется двойное лицензирование, для которого доступна лицензия Eclipse Distribution License (EDL), хотя на использование этой лицензии необходимо подавать заявку и это рассматривается в индивидуальном порядке.
Eclipse изначально был выпущен под Common Public License, но позже был повторно лицензирован по Eclipse Public License. Фонд свободного программного обеспечения заявил, что обе лицензии являются лицензиями на бесплатное программное обеспечение, но несовместимы с Стандартной общественной лицензией GNU (GPL).
По словам Ли Накмана, директора по технологиям Rational Division IBM (созданного в 2003 году) в то время, название «Eclipse» (датируется по крайней мере 2001) не было игрой слов на Sun Microsystems, поскольку основным конкурентом продукта на момент присвоения названия была Microsoft Visual Studio, которую Eclipse должен был затмить.
Разным версиям Eclipse даны разные названия, связанные с наукой. За версиями, названными в честь Каллисто, Европа и Ганимед, которые являются спутниками Юпитера, последовала версия, названная в честь Галилей, первооткрыватель тех лун. За ними последовали два имени на тему солнца: Гелиос из греческой мифологии и Индиго, один из семи цветов радуги (которая создается солнцем). Версия после этого, Юнона, имеет тройное значение: римская мифологическая фигура, астероид и космический корабль к Юпитеру. Кеплер, Луна и Марс продолжили тему астрономии, а затем Неон и Кислород составили тему химических элементов. Photon представляет собой возвращение к именам, посвященным солнцу. По состоянию на 2018 год от алфавитной схемы отказались, и вместо этого выпуски именуются в формате ГГГГ-ММ.
Начиная с версии 4.9, в проекте было принято решение отказаться от этого соглашения об именах, чтобы лучше согласоваться с новым одновременным выпуском стратегии и принять соглашение об именах на основе дат для отражения ежеквартальных выпусков.
С 2006 года Фонд координирует ежегодный одновременный выпуск. Каждый выпуск включает платформу Eclipse и несколько других проектов Eclipse.
С 2008 по 2018 год каждый одновременный выпуск происходил в 4-ю среду июня. В 2018 году проект перешел на квартальные (13 недель) ГГГГ-ММ выпуски без промежуточных сервисных выпусков.
Название версии | Дата | Версия платформы | Проекты | Основные изменения |
---|---|---|---|---|
Н / Д | 21 июня 2004 г. | Старая версия, больше не поддерживается: 3.0 | ||
Н / Д | 28 Июнь 2005 г. | Старая версия, больше не поддерживается: 3.1 | Добавлена поддержка Java 5 : обобщенные шаблоны, аннотации, упаковка-распаковка, перечисления, улучшенный цикл for, varargs, статический импорт | |
Callisto | 30 июня 2006 г. | Старая версия, больше не поддерживается: 3.2 | Проекты Callisto | |
Europa | 29 июня 2007 г. | Старая версия, нет больше не поддерживается: 3,3 | Проекты в Европе | |
Ганимед | 25 июня 2008 г. | Старая версия, больше не поддерживается: 3,4 | Проекты Ганимед | |
Галилео | 24 июня 2009 г. | Старая версия, больше не поддерживается: 3.5 | Проекты Galileo | |
Helios | 23 июня 2010 г. | Старая версия, больше не поддерживается: 3.6 | Проекты Helios | |
Indigo | 22 июня 2011 г. | Старая версия, больше не поддерживается: 3.7 | Проекты Indigo | Добавлен Java 7 Поддержка (3.7.1 sr1): улучшенный вывод типа для создания универсального экземпляра (Diamond), множественный захват, оператор try-with-resources, упрощенный вызов метода Varargs, строки в переключателе, двоичные литералы и символы подчеркивания в числовых литералах, Полиморфные методы |
Juno | 27 июня 2012 г. | Старая версия, больше не поддерживается: 3.8 и 4.2 | проекты Juno | |
Kepler | 26 июня 2013 г. | Старая версия, больше не поддерживается: 4.3 | Проекты Kepler | |
Luna | 25 июня 2014 г. | Старая версия, больше не поддерживается: 4.4 | Проекты Luna | Интегрированная поддержка Java 8 ; в предыдущей версии это было возможно с помощью подключаемого модуля исправлений Java 8. |
Марс | 24 июня 2015 года | Старая версия, больше не поддерживается: 4.5 | Марс проекты | |
Неон | 22 июня 2016 года | Старая версия, больше не поддерживается: 4.6 | Неоновые проекты | |
Oxygen | 28 июня 2017 года | Старая версия, больше не поддерживается: 4.7 | Oxygen проекты | Oxygen.1a представил поддержку Java 9 и Junit 5, а Oxygen.3a представил поддержку Java 10. Прекращена поддержка следующих платформ на базе Unix: AIX, Solaris, HP-UX и s390. |
Photon | 27 июня 2018 г. | Старая версия, больше не поддерживается: 4.8 | Проекты Photon | Прекращена поддержка 32-битных Windows и Linux. |
2018-09 | 19 сентября 2018 | Старая версия, больше не поддерживается: 4.9 | 2018-09 проекты | |
2018-12 | 19 декабря 2018 г. | Старая версия, больше не поддерживается: 4.10 | 2018-12 проекты | Добавлена поддержка Java 11. |
2019-03 | 20 марта 2019 | Старая версия, больше не поддерживается: 4.11 | 2019-03 проекты | |
2019-06 | 19 июня 2019 | Старая версия, больше не поддерживается: 4.12 | 2019-06 проекты | |
2019-09 | 18 сентября 2019 | Старая версия, больше не поддерживается: 4.13 | Проекты 2019-09 | |
2019-12 | 18 декабря 2019 | Старая версия, больше не поддерживается: 4.14 | 2019-12 проекты | |
2020 -03 | 18 марта 2020 г. | Старая версия, больше не поддерживается: 4.15 | 2020-03 проекты | |
2020-06 | 17 июня 2020 | Старая версия, больше не поддерживается: 4.16 | 2020-06 проекты | |
2020-09 | 16 сентября 2020 года | Текущая стабильная версия: 4.17 | 2020-09 проекты | |
2020-12 | 16 декабря 2020 года | Будущая версия: 4.18 | 2020- 12 проектов |
Eclipse использует плагины для обеспечения всех функций внутри и поверх системы времени выполнения. Его система времени выполнения основана на Equinox, реализации спецификации ядра OSGi.
Помимо возможности расширения платформы Eclipse с помощью других языков программирования, таких как C и Python, фреймворк плагинов позволяет платформе Eclipse работать с языками набора, такими как LaTeX и сетями такие приложения, как telnet и системы управления базами данных. Архитектура подключаемого модуля поддерживает запись любого желаемого расширения в среду, например для управления конфигурацией. Поддержка Java и CVS предоставляется в Eclipse SDK, а поддержка других систем управления версиями обеспечивается сторонними подключаемыми модулями.
За исключением небольшого ядра времени выполнения, все в Eclipse является подключаемым модулем. Таким образом, каждый разработанный плагин интегрируется с Eclipse так же, как и другие плагины; в этом отношении все функции «созданы равными». Eclipse предоставляет плагины для широкого спектра функций, некоторые из которых предоставлены третьими сторонами, использующими как бесплатные, так и коммерческие модели. Примеры подключаемых модулей включают для Unified Modeling Language (UML), для последовательностей и других диаграмм UML, подключаемый модуль для DB Explorer и многие другие.
Eclipse SDK включает инструменты разработки Eclipse Java (JDT), предлагающие IDE со встроенным Java инкрементным компилятором и полную модель исходных файлов Java. Это позволяет использовать расширенные методы рефакторинга и анализ кода. В среде IDE также используется рабочая область, в данном случае набор метаданных в плоском файловом пространстве, позволяющий изменять внешние файлы, если соответствующий ресурс рабочей области впоследствии обновляется.
Eclipse реализует графические элементы управления набора инструментов Java под названием Standard Widget Toolkit (SWT), тогда как большинство приложений Java используют стандартный набор Java Abstract Window Toolkit (AWT) или Swing. пользовательский интерфейс Eclipse также использует промежуточный слой графического пользовательского интерфейса, называемый JFace, который упрощает создание приложений на основе SWT. Eclipse был создан для работы на Wayland во время проекта Google Summer of Code (GSoC) в 2014 году.
По состоянию на 2017 год языковые пакеты разрабатывались Babel Project обеспечивать переводы на более чем 40 естественных языков.
Eclipse предоставляет платформу полнофункционального клиента (RCP) для разработки приложений общего назначения.
Следующие компоненты составляют платформу полнофункционального клиента:
Примеры многофункциональных клиентских приложений на основе Eclipse:
Eclipse поддерживает разработку для Tomcat, GlassFish и многие другие серверы, и часто позволяет установить требуемый сервер (для разработки) непосредственно из IDE. Он поддерживает удаленную отладку, позволяя пользователю просматривать переменные и выполнять код приложения, работающего на подключенном сервере.
Проект Eclipse Web Tools Platform (WTP) - это расширение платформы Eclipse с инструментами для разработки веб-приложений и приложений Java EE. Он включает в себя редакторы исходного кода и графические редакторы для различных языков, мастеров и встроенных приложений для упрощения разработки, а также инструменты и API для поддержки развертывания, запуска и тестирования приложений.
Проект Modeling содержит все официальные проекты Eclipse Foundation, ориентированные на технологии разработки на основе моделей. Все они совместимы с Eclipse Modeling Framework, созданным IBM. Эти проекты разделены на несколько категорий: преобразование модели, инструменты разработки моделей, разработка конкретного синтаксиса, разработка абстрактного синтаксиса, технологии и исследования и амальгама.
Проекты преобразования моделей используют модели на основе Eclipse Modeling Framework (EMF) в качестве входных данных и создают либо модель, либо текст в качестве выходных данных. Проект преобразования модели в модель включает язык преобразования ATLAS (ATL), язык преобразования с открытым исходным кодом и инструментарий, используемый для преобразования данной модели или для создания новой модели из заданной модели EMF. Проекты преобразования модели в текст содержат Acceleo, реализацию MOFM2T, стандартную модель языка текста из Object Management Group (OMG). Генератор кода Acceleo может генерировать любой текстовый язык (Java, PHP, Python и т. Д.) Из моделей на основе EMF, определенных с помощью любой метамодели (Unified Modeling Language (UML), Язык моделирования систем (SysML) и др.). Это открытый исходный код.
Проекты инструментов разработки моделей - это реализация различных стандартов моделирования, используемых в отрасли, и их наборов инструментов. Среди этих проектов можно найти реализации нескольких стандартов:
Проект Concrete Syntax Development содержит структуру графического моделирования, основанную на Eclipse структуру, предназначенную для графического представления моделей на основе EMF.
Аннотация В проекте разработки синтаксиса размещается Eclipse Modeling Framework, ядро большей части проекта моделирования Eclipse Foundation, а также инфраструктура, доступная для EMF, например Connected Data Objects (CDO), запрос EMF или проверка EMF.
Технологические и исследовательские проекты являются прототипами проекта моделирования; этот проект используется для размещения всех проектов моделирования Eclipse Foundation на стадии их инкубации.
Amalgam обеспечивает упаковку и интеграцию всех доступных инструментов моделирования для пакета Eclipse, предназначенного для инструментов моделирования.
Для управления жизненным циклом приложения (ALM) и управления задачами в Eclipse требуется дополнительный компонент Mylyn () и реализация с открытым исходным кодом интерфейса , ориентированного на задачи. Он предоставляет API для инструментов, встраивающих интерфейс, ориентированный на задачи. Для разработчиков программного обеспечения это помогает разработчику эффективно работать с множеством различных задач (таких как ошибки, отчеты о проблемах или новые функции). Задачи интегрированы в Mylyn. Для всех задач, которые были интегрированы, Mylyn отслеживает активность пользователей и пытается определить информацию, имеющую отношение к текущей задаче. Он использует этот контекст задачи, чтобы сфокусировать пользовательский интерфейс Eclipse на связанной информации. Mylyn может интегрироваться с такими репозиториями, как Bugzilla, Trac, Redmine, Mantis, JIRA и <247.>GitHub. Он ориентирован на повышение производительности за счет сокращения поиска, прокрутки и навигации. Делая контекст задачи явным, Mylyn также предназначен для облегчения многозадачности, планирования, повторного использования прошлых усилий и обмена опытом.
Название проекта происходит от миелина, электрически изолирующего слоя, который окружает аксоны нейронов. Первоначальное название этого проекта, «Майлар», воспроизводило товарный знак кинокомпании boPET, поэтому Eclipse Foundation изменила название проекта.
Eclipse поддерживает широкий выбор расширений, добавляя поддержку Python через PyDev, Android разработка через Google ADT, JavaFX через e (fx) clipse, JavaScript, jQuery и многие другие на Eclipse Marketplace. Valable - это подключаемый модуль Vala для Eclipse.
В проекте Eclipse существует несколько альтернативных дистрибутивов.
Проект средств разработки PHP-препроцессора гипертекста (PHP) обеспечивает основу для платформы Eclipse. Проект включает в себя все компоненты разработки, включая автозавершение кода, разработку PHP и обеспечение расширяемости. Он использует существующую платформу Eclipse Web Tools Platform (WTP) и Dynamic Languages Toolkit (DLTK).
Инструменты разработки Android (ADT) были заменены в 2015 году собственным плагином Eclipse Foundation, названный Andmore: Development Tools for Android, после того, как Google прекратил разработку своего плагина для Eclipse IDE, который предназначен для обеспечения интегрированной среды для создания приложений Android. ADT / Andmore расширяет возможности Eclipse, позволяя разработчикам создавать новые проекты Android, создавать пользовательский интерфейс приложения, добавлять пакеты на основе Android Framework API, отлаживать свои приложения с помощью инструментов Android SDK и экспортировать подписанные (или неподписанные) файлы.apk для распространения своих приложений. Он доступен для бесплатного скачивания. ADT от Googles был официальной IDE для Android до 2015 года, но был заменен Eclipse Andmore и официальной Android Studio.