Разработка простого Eclipse RCP приложения. Плюсы и минусы платформы

08.05.2019

Если вы когда-нибудь пристально следили за событиями, происходящими в мире open-source или Java-технологий, то вы просто не могли никогда не слышать всего этого шума, развернутого вокруг Eclipse. Eclipse – это расширяемая, open-source интегрированная среда разработки (IDE, Integrated Development Environment). Этот проект был запущен в ноябре 2001 года, когда IBM выделили исходный код из Websphere Studio Workbench, ценой в 40 миллионов долларов, и сформировали Eclipse Consortium для управления разработкой этого инструмента.

Первоначальная цель заключалась в том, чтобы "разработать стабильную, полнофункциональную, промышленную платформу, качества коммерческого продукта, для разработки интегрируемых инструментов". На настоящий момент Eclipse Consortium фокусируется на следующих проектах:

  1. The Eclipse Project (http://www.eclipse.org/eclipse/index.html) – ответственен за разработку непосредственно Eclipse IDE (платформу для сборки прочих инструментов Eclipse), Java Development Tools (JDT) и Plug-In Development Environment (PDE), используемую для предоставления возможности расширения самой платформы.
  2. The Eclipse Tools Project (http://www.eclipse.org/tools/index.html) – занимается созданием оптимальных инструментальных средств для платформы Eclipse. В текущие подпроекты входят: Cobol IDE, C/C++ IDE, а также инструмент моделирования EMF.
  3. The Eclipse Technology Project (http://www.eclipse.org/technology/index.html) – занимается технологическими исследованиями, инкубацией и образованием по части использования платформы Eclipse.

Совместно с JDT, платформа Eclipse предоставляют множество различных возможностей, которые вы могли наблюдать в коммерческих IDE: подсветка синтаксиса в редакторе, компиляция кода, отладчик уровня исходного кода с поддержкой "нитей" (threads), навигатор по классам, файловый менеджер и менеджер проектов, интерфейсы для стандартных контролирующих систем исходного кода, таких как, например, CVS и ClearCase.

Помимо этого Eclipse содержит ряд уникальных возможностей, например, рефакторинг кода (http://www.refactoring.com/), автоматическое обновление и сборка кода (посредством Update Manager), список задач, поддержка возможности тестирования модулей с помощью JUnit (http://www.junit.org/), а также интеграция с инструментом сборки приложений Jakarta Ant (http://jakarta.apache.org/ant/index.html).

Несмотря на большое количество стандартного набора возможностей, Eclipse отличается от традиционных IDE по нескольким фундаментальным особенностям. Может быть, самая интересная возможность Eclipse – это абсолютная нейтральность относительно платформы и языка программирования. Вдобавок к эклектичному набору языков программирования, которые поддерживаются Eclipse Consortium (Java, C/C++, Cobol), существует множество сторонних проектов, с помощью которых вы можете обеспечить поддержку интересующего вас языка программирования в Eclipse. На сегодняшний день существуют реализации следующих популярных языков программирования: Python, Eiffel, PHP, Ruby, и C#.

Платформа Eclipse предоставляется, благодаря Eclipse Consortium, в виде заранее скомпилированных исполняемых файлов для Windows, Linux, Solaris, HP-UX, AIX, QNX, и Mac OS X. Очень много внимания концентрируется вокруг архитектурной системы plug-in"ов этой платформы, а также "богатых" API (Application Programming Interface), поставляемых с Plug-in Development Environment для расширения Eclipse. Добавить поддержку нового типа редактора, просмотрщика (панели) или языка программирования до безобразия просто, благодаря хорошо спроектированным API и строительным блокам, которые предоставляет Eclipse.

Имея приблизительно сотню проектов, по разработке plug-in"ов, имея ресурсы, предоставляемые такими промышленными гигантами, как IBM, HP и Rational (которая недавно была куплена IBM), и дизайн Erich Gamma, который помогает быстро разобраться в процессе разработки – будущему Eclipse предстоит быть весьма ярким, интересным и перспективным.

Установка

Бьюсь об заклад, что вы сейчас только и думаете о том, где бы достать копию этого самого Eclipse для вашей платформы и как бы это его установить? :) Первое, о чем вам для начала нужно позаботиться – это убедиться в наличии подходящей, рабочей JRE (Java Runtime Evironment). Хотя Eclipse и создавался в расчете на возможность компиляции кода как для JVM (Java Virtual Machine) версии 1.3, так и для версии 1.4, однако текущие версии Eclipse были спроектированы таким образом, чтобы запускаться на JVM версии 1.3. Если вы не уверены, где можно достать "виртуальную" Java-машину (JVM) для вашей платформы, вы можете найти подробные инструкции и дополнительную информацию об этом на сайте

Как только вы убедились в наличии JVM или установили подходящую ее версию, вы готовы к установке Eclipse. Для этого посетите download-раздел сайта проекта Eclipse (http://www.eclipse.org/downloads/) и скачайте оттуда последний релиз, собранный специально под используемую вами платформу. Все дистрибутивы представляют собой.zip-архивы. Распакуйте скачанный архив в подходящую директорию и потратьте немного времени на изучение всех файлов, содержащихся в директории readme.

Хотите - верьте, хотите – нет, но на этом инсталляция завершена. Если вы правильно установили JVM и корректно распаковали архив с Eclipse – вы можете приступать к процессу первого запуска этой IDE. Все дистрибутивы, содержащие скомпилированную версию платформы, предоставляют программы для запуска, которые располагаются в основной директории: eclipse. Имя этой программы запуска изменяется в зависимости от платформы, под которую вы скачали дистрибутив: eclipse.exe под Windows, eclipse под Solaris, и так далее. При первом запуске приложение Eclipse выполнит некоторые оставшиеся задачи по установке (например, создание workspace-директории для хранения файлов проектов) до того, как приложение окончательно будет готово к работе.

Интерфейс

Итак, когда у вас уже есть установленный и запущенный Eclipse, самое время начать им пользоваться. После того как вы запустили Eclipse, вы должны увидеть приблизительно следующее:

Рисунок 1

Как вы можете заметить, Eclipse IDE имеет вполне стандартное содержание меню:

Рисунок 2

Помимо меню, здесь ярко видно сходство панели инструментов и системы закладок с такими же в других средах разработки приложений.

Пример приложения

Панели File Navigator , Code Outline и Task List отображены, но на данный момент не содержат никаких данных. Чтобы продолжить знакомство с Eclipse мы создадим простое Swing-приложение программу-калькулятор. Распишем действия по шагам:

1. Выберите пункт меню File->New->Project..., чтобы начать создание вашего первого Java-проекта. В окне "мастера" выберите Java среди предложенных типов проектов из левого списка и Java Project в правом списке, после чего нажмите кнопку Next .


Рисунок 3

2. В качестве имени проекта введите Calculator и продолжите создание проекта, нажав кнопку Next .


Рисунок 4

3. И, наконец, на завершающем этапе "мастер" создания нового проекта дает вам возможность определить директории, где будут храниться файлы исходного кода и class-файлы, определить подпроекты, которые могут быть использованы создаваемым нами, текущим проектом, а также любые библиотеки, которые мы предполагаем использовать в своем приложении. Установите переключатель на значение Use source folder contained in the project , после чего нажмите кнопку Create New Folder... . В качестве имени новой директории для хранения исходного кода введите src. Нажмите Yes , когда Eclipse спросит вас о том, изменить ли директорию с собираемым приложением на Calculator/bin .


Рисунок 5

4. Нажмите кнопку Finish , чтобы дать возможность Eclipse завершить создание нового проекта.

Как только вы создали новый проект, вы можете заметить, что внешний вид Eclipse несколько изменился (этого и следовало ожидать): панель Outline переместила в другую часть окна, панель Navigator была заменена панелью Package Explorer и т.д.

Вот какой вид приняло окно Eclipse после того, как мы создали новый проект:


Рисунок 6

Такая планировка называется Java Perspective . "Ракурс", в понятии Eclipse, определяет какой-либо сохраненный порядок расположения любого количества различных панелей редактора и просмотрщиков. Eclipse поставляется с рядом "ракурсов" определенных по умолчанию (Resource , Java , Debug и другие), которые могут быть изменены в соответствии с вашими нуждами, или же вы можете создавать свои собственные ракурсы. Ракурсы управляются при помощью элементов меню Window или специальной панели инструментов, которая обычно располагается вдоль левой границы окна Eclipse.

Рисунок 7

Следующим шагом в создании нашего Java-проекта нужно создать директории, которые будут содержать весь наш исходный код. Для этого переключитесь в ракурс Resource , используя пункт меню Window->Open Perspective->Resource . В панели Navigator разверните узлы дерева структуры папок таким образом, чтобы вы могли видеть узел-папку src. Выделите этот узел, и после выполните пункт меню File->New->Folder . В появившемся диалоговом окне, убедитесь, что директория src выбрана и затем введите в качестве имени новой, в поле Folder Name , имя com .

Создавать большое количество папок с помощью диалога New Folder было бы не очень удобно и утомительно. К счастью, Eclipse может предоставить вам возможность самим создавать нужные директории с помощью вашего любимого файлового менеджера: командной строки, Windows Explorer и прочих. Используя один из предложенных методов, создайте в папке com папку devious , а в ней папку calculator . Как только вы создали эти папки, выберите любую папку-узел в панели Navigator и, с помощью элемента меню File->Refresh , обновите содержимое этой панели. Таким образом, Eclipse произведет просмотр файловой системы и обновит панель проекта в соответствии с теми изменениями, что вы внесли (создали новые директории). На этом этапе ваше окно Eclipse должно иметь примерно следующий вид:


Рисунок 8

И еще одно замечание по поводу создания файлов: на ранних этапах создания проекта, вы, скорее всего, достаточно часто будете запускать свое приложений, создавать новые файлы и папки, добавлять новый код, компилировать, и тестировать свой код снова. Важно помнить, что расположение меню в Eclipse зависит от используемого ракурса. Так, если вы переключаетесь в ракурс Resource , чтобы создать новый файл или папку в панели Navigator , вы обнаружите, что меню Run , например, в корне отличается от меню Run в ракурсе Java . Одно из решений этой часто встречающейся проблемы – это использование меню Windows->Show View с тем, чтобы отобразить панель Navigator в ракурсе Java . Если вас полностью устроит полученный ракурс то, воспользовавшись элементом меню Window->Save Perspective As... , вы сможете сохранить ваши изменения в новом ракурсе, либо переписать существующий ракурс Java .

Добавление кода

Теперь, когда у нас есть созданная структура директорий, мы можем начинать добавление исходного кода в наш проект. Мы разделим нашу программу-калькулятор на три класса (файла): CalcModel.java , CalcPanel.jav a, и Calculator.java . Скачайте.zip-архив с исходным кодом этой программы отсюда http://www.onjava.com/onjava/2002/12/11/examples/calculator.zip . После этого распакуйте этот архив и поместите три упомянутых выше файла в директорию com/devious/calculator . Снова воспользуемся пунктом меню File->Refresh , чтобы обновить содержимое панели Project Manager. Вот, что вы должны увидеть после выполнения этих действий:


Рисунок 9

CalcPanel.java представляет основу интерфейса пользователя нашего калькулятора. Calculator.java выполняет подготовительные инициализационные функции и запускает GUI (графический интерфейс пользователя). Самая же важная часть нашей программы находится в файле CalcModel.java , который занимается непосредственно реализацией фактической математики нашего калькулятора: реагирование на события, выполнение математических вычислений, обновление отображаемой информации, и т.д. Самый простой способ просмотреть исходный код – это переключиться из ракурса Java в Java Browsing . Для этого используйте Open Perspetive из меню Window или кликните на кнопке Open , которая находится на панели инструментов для работы с ракурсами.

В то время как вы перемещаетесь по исходному коду на панели Package Explorer , вы можете заметить, что панель Outline становится ненужной вам на данном этапе. Ее можно на время убрать с экрана, кликнув по крестику в правом углу этой панели. Когда она вам понадобится, вы можете воспользоваться пунктом меню Window->Show View->Outline , чтобы отобразить ее вновь.


Рисунок 10

Запуск и отладка кода

Итак, вы скачали и установили Eclipse, создали новый Java-проект и добавили необходимые файлы и папки для своего простого приложения. Настало время проверить это приложение в деле, запустив его. Для этого вам нужно установить ракурс Java , чтобы выполнить шаги, которые необходимы для запуска приложения:

1. Из основного меню Run выберите элемент Run...

2. В появившемся диалоге "мастера" запуска, выберите "Java Application" из списка Launch Configurations и нажмите кнопку New


Рисунок 11

3. В качестве имени новой конфигурации введите Calculator

4. Нажмите кнопку Search... и выберите основным классом класс Calculator в поле Main class , или просто введите в поле ввода полное имя класса: com.devious.calculator.Calculator .


Рисунок 12


Рисунок 13

Создав однажды конфигурацию запуска своего приложения, вы можете запускать его вновь с помощью меню Run->Run History или кнопки Run на панели инструментов. Если вы потратите достаточно времени, "играя" с этим калькулятором, вы обнаружите, что он работает в основном правильно, но только с одном "но": он не хочет правильно выполнять операцию вычитания! Время пустить в ход отладчик исходного кода Eclipse и обнаружить эту злосчастную ошибку. Если вы следовали всем инструкциям, приведенным выше в этой статье, то вы можете запустить это приложение с отладчиком с той же конфигурацией, которую мы определили для обычного запуска. Для этого выберите в меню пункт Run->Debug History->Calculator .

Когда вы запускаете свое приложение вместе с отладчиком, Eclipse автоматически переключается в ракурс Debug :


Рисунок 14

Поскольку, обнаруженная нами, проблема сконцентрирована вокруг функции вычитания, мы установим точку прерывания (breakpoint) в обработчик события для кнопок "-" и "=". Для начала, нам нужно переключиться в закладку редактора класса CalcPanel . (Если у вас нет закладки с исходным кодом этого класса, вам нужно открыть файл с именем CalcPanel.java , предварительно переключившись в ракурс Java или Resource и потом вернуться обратно в ракурс Debug ).

Воспользуйтесь панелью Outline , чтобы определить местонахождение метода actionPerformed . Переместитесь немного ниже, пока не обнаружите выражение case для знака "-" (строка 126). Если вы выполните двойной клик на левой границе этой строки, Eclipse автоматически установит точку прерывания в ней. Переместитесь немного ниже и установите еще одну точку прерывания на вызове метода model.calculate() в обработчике события кнопки "=" (строка 138).


Рисунок 15

Теперь переключитесь в окно калькулятора и нажмите несколько кнопок. Например, "2", "4", "6" и "-". Как только отладчик натыкается на точку прерывания, вы можете видеть появившиеся кнопки на панели инструментов Debug , которые служат для пошагового прохождения по исходному коду, причем можно делать шаги по коду и, не заходя внутрь методов, выполнять их автоматически, или же, заходя внутрь, проходиться и по их исходному коду.

Рисунок 16

Если мы зайдем внутрь метода setOperation() , станет понятно, что он выполняют достаточно тривиальную функцию: сохраняет код операции в поле pendingOp . Теперь нажмите кнопку Resume на панели инструментов Debug , чтобы продолжить выполнение программы.

Замечание: Основная ошибка новых пользователей Eclipse в том, что они иногда нажимают кнопки Debug или Run на основной панели инструментов (что приводит к запуску еще одной копии приложения) вместо того, чтобы нажать Resume .

Теперь нажмите еще пару кнопок (например, "1", "2", "3") и после этого кнопку "=". Таким образом, мы оказываемся внутри метода calculate() , проблема оказалась очевидна: кто-то скопировал код из варианта OP_ADD, но забыл заменить знак + на -. Проблема решена! :)

Исправление ошибки методом HotSwap

Если для запуска приложения вы использовали JVM версии 1.4, то нам остался всего один завершающий шаг на пути к исправлению этой ошибки в нашем примере. Вместо того, чтобы выходить из программы-калькулятора, вносить изменения в исходный код, компилировать заново весь проект, и только потом запускать новую сессию отладчика, мы можем изменить все "налету". В то время как отладчик все еще запущен, измените в исходном коде строку с:

SetDisplay(previousValue + currentValue); // на: setDisplay(previousValue - currentValue);

Сохраните этот файл, после чего нажмите кнопку Resume , чтобы "отпустить" приложение и продолжить работу с ним. Используя кнопку C , чтобы сбросить его, и повторите действия, которые мы проделали ранее. Теперь все работает, как положено!

То, что мы сейчас продемонстрировали – это поддержка Eclipse"ом новой возможности (которая носит название HotSwap) JVM версии 1.4. Теперь Java Platform Debugger Architecture (JPDA) поддерживает возможность замены исходного кода у выполняющегося приложения. Это особенно полезно, когда запуск приложения или нахождение места, где оно "рушится", отнимает много времени.

Интересные возможности в ближайших версиях Eclipse

Одна весьма интересная особенность Eclipse – это скорость, с которой отлавливаются ошибки, и с которой разработчики реагируют на различные нужды и пожелания пользователей. Eclipse Consortium ежемесячно выпускают последние релизы, которые включают в себя стабильные версии различных возможностей, которыми интересуются пользователи (такие релизы содержит в названии идентификаторы M1, M2, M3 и т.д.) Среди возможностей, включенных в релиз 2.1 M3 можно выделить следующие, наиболее значимые:

  • - настраиваемые связи "горячих" комбинаций клавиш, включая набор связей, схожий с тем, что есть в Emacs;
  • - возможность автоматической вставки TODO , FIXME и других тэговых комментариев в Java-код, в различные элементы и списки задач;
  • - улучшенная поддержка CVS, включая возможность определять "working sets", которые ограничивают количество отображаемых проектов на панели CVS Repositories ;
  • - новые заготовки в Java-редакторе, которые могут использоваться для показа исходного кода, Javadoc, детальных сообщений об ошибках для каждой строки кода или выражения в "выпадающем" (tooltip) окне;
  • - поддержка нескольких новых рефакторингов;
  • - новая панель Threads and Monitors в отладчике, которые позволяют определить какие из "нитей" (потоков) блокируют ресурсы, какие из них находятся в ожидании, и прочую полезную информацию для отладки мультипотоковых приложений;
  • - более тесная интеграция с инструментом сборки Jakarta Ant;

Эта последняя особенность и делает Eclipse хорошо скомпонованной средой разработки Java-приложений и, в частности, разработки Web-приложений. Eclipse объединяет в себе все инструменты, которые необходимы разработчику чтобы успешно разрабатывать Web-приложения: расширяемую IDE, стандартный компилятор, возможность удаленной отладки, поддержка Ant, тестирование с помощью JUnit, plug-in"ы для взаимодействия, практически, со всеми серверами приложений, а также EJB-контейнер.

Ресурсы

  • eclipse.org (http://www.eclipse.org/)
  • Eclipse Project FAQ (http://www.eclipse.org/eclipse/faq/eclipse-faq.html)
  • Eclipse Platform Technical Overview (

Среда разработки Eclipse

Первоначально Eclipse разрабатывалась фирмой IBM как преемник среды разработки IBM VisualAge, в качестве корпоративного стандарта IDE для разработки на разных языках под платформы IBM. По сведениям IBM, проектирование и разработка стоили 40 миллионов долларов. Исходный код был полностью открыт и сделан доступным после того, как Eclipse был передан для дальнейшего развития независимому от IBM сообществу.

В Eclipse 3.0 (2003 год) были выбраны спецификации сервисной платформы OSGi, как архитектура времени выполнения. С версии 3.0 Eclipse перестал быть монолитной IDE, поддерживающей расширения, а сам стал набором расширений. В основе лежат фреймворк OSGi и SWT/JFace, на основе которых разработан следующий слой -- RCP (Rich Client Platform, платформа для разработки полноценных клиентских приложений). RCP служит основой не только для Eclipse, но и для других RCP-приложений, например Azureus и File Arranger. Следующий слой -- сам Eclipse, представляющий собой набор расширений RCP -- редакторы, панели, перспективы, модуль CVS и модуль Java Development Tools (JDT).

С 2006 года фонд Eclipse координирует ежегодный общий релиз (Simultaneous Release), который происходит в июне. Каждый выпуск включает в себя платформу Eclipse, а также ряд других проектов Eclipse.

Eclipse служит в первую очередь платформой для разработки расширений, чем он и завоевал популярность: любой разработчик может расширить Eclipse своими модулями. Уже существуют Java Development Tools (JDT), C/C++ Development Tools (CDT), разрабатываемые инженерами QNX совместно с IBM, и средства для языков Ada (GNATbench, Hibachi), COBOL, FORTRAN, PHP и пр. от различных разработчиков. Множество расширений дополняет среду Eclipse менеджерами для работы с базами данных, серверами приложений и др.

Eclipse JDT (Java Development Tools) -- наиболее известный модуль, нацеленный на групповую разработку: среда интегрирована с системами управления версиями -- CVS,GIT в основной поставке, для других систем (например, Subversion, MS SourceSafe) существуют плагины. Также предлагает поддержку связи между IDE и системой управления задачами (ошибками). В основной поставке включена поддержка трекера ошибок Bugzilla, также имеется множество расширений для поддержки других трекеров (Trac, Jira и др.). В силу бесплатности и высокого качества, Eclipse во многих организациях является корпоративным стандартом для разработки приложений.

Eclipse написана на Java, потому является платформо-независимым продуктом, за исключением библиотеки SWT, которая разрабатывается для всех распространённых платформ (см. ниже). Библиотека SWT используется вместо стандартной для Java библиотеки Swing. Она полностью опирается на нижележащую платформу (операционную систему), что обеспечивает быстроту и натуральный внешний вид пользовательского интерфейса, но иногда вызывает на разных платформах проблемы совместимости и устойчивости приложений. Основой Eclipse является платформа расширенного клиента (RCP -- от англ. rich client platform). Её составляют следующие компоненты:

OSGi (стандартная среда поставки комплектов (англ. bundles));

SWT (портируемый инструментарий виджетов);

JFace (файловые буферы, работа с текстом, текстовые редакторы);

Рабочая среда Eclipse (панели, редакторы, проекции, мастеры).

GUI в Eclipse, написан с использованием инструментария SWT. Последний, в отличие от Swing (который самостоятельно эмулирует графические элементы управления), использует графические компоненты данной операционной системы. Пользовательский интерфейс Eclipse также зависит от промежуточного слоя GUI, называемого JFace, который упрощает построение пользовательского интерфейса, базирующегося на SWT.

Гибкость Eclipse обеспечивается за счёт подключаемых модулей, благодаря чему возможна разработка не только на Java, но и на других языках, таких как C/C++, Perl, Groovy, Ruby, Python, PHP, Erlang, Компонентного Паскаля, Zonnon и прочих.

IDE (Integrated Development Environment) или же по-русски интегрированная среда разработки, это инструмент, предназначенный для разработки программного обеспечения. В мы писали код программы в текстовом редакторе, потом компилировали и запускали программу через командную строку, что не совсем удобно. IDE же позволяет в единой среде писать, компилировать, запускать и отлаживать программу.

Наиболее популярными бесплатными IDE для Java программистов являются: Eclipse , NetBeans и IntelliJ IDEA . В интернете существует много споров о том, какая же IDE лучше, однако, однозначного ответа на этот вопрос не существует, все зависит от круга задач, которые необходимо решать. Также, каждый программист обычно выбирает ту, которая ему удобнее и к которой он привык. На начальном этапе можете выбрать любую, это не имеет значения.

Также, существует много сторонников теории, что несколько первых месяцев следует работать исключительно с блокнотом и командной строкой, поскольку только так можно понять, как все работает изнутри, и правда в этом есть. Но, после нескольких неудачных попыток компиляции и ручного исправления синтаксических ошибок в коде, может просто пропасть желание заниматься этим дальше, поэтому я сторонник того, чтобы сразу переходить к IDE.
В любом случае, выбор за вами.

В этом уроке мы рассмотрим, как начать работу с Eclipse IDE.

  • Установим Eclipse IDE на компьютер
  • Создадим в ней программу Hello World.

Установка и запуск Eclipse IDE

  1. Переходим по ссылке http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/keplerr и скачиваем Eclipse, соответствующую операционной системе.
    Далее будет рассмотрена установка для Windows.
  2. Распаковываем скаченный.zip архив в директорию C:\Program Files\
  3. На этом установка завершена!
  4. Чтобы запустить Eclipse IDE, нужно открыть файл eclipse.exe , находящийся в папке C:\Program Files\eclipse\ .
  5. При запуске откроется окно, предлагающее выбрать рабочую область (Workspace), где будут храниться программные файлы проекта. Указываем удобную для нас директорию (рис. 3.1.) и нажимаем OK .

6. Закрываем приветственное сообщение (рис. 3.2.), тем самым перейдя в рабочую среду.

Начало работы с Eclipse IDE

Теперь создадим новый проект. Для этого выберем меню File->New->Project..

В открывшемся окне выберем Java Project (рис. 3.3.) и нажмем Next .

В следующем окне введем имя нашего проекта (рис. 3.4.) и нажмем Finish .

Проект отобразится в левой части экрана и должен в себе содержать элемент JRE System Library (рис. 3.5.)

Если этого элемента нет, то его необходимо добавить вручную! Для этого выберем Windows -> Preferences , в открывшемся окне Preferences слева выберем Java -> Installed JREs , нажмем кнопку Add… справа (рис 3.6.). В открывшемся окне выберем Standard VM и нажмем кнопку Next.

В открывшемся окне Add JRE , укажем директорию, в которой установлена Java (рис 3.7.) и нажмем Finish .

Первым делом необходимо создать класс. Нажмем правой кнопкой на папке с проектом и выберем из контекстного меню New -> Class (рис 2.7.).

В открывшемся окне New Java Class введем имя класса проекта HelloWorld и установим флажок для метода public static void main(String args) (рис 2.8.). Нажмем Finish .

В итоге, Eclipse создаст новый класс Hello World

Откроем созданный класс и завершим нашу программу. Добавим в метод main следующий код (рис 2.9.).

System.out.println("Hello World");

Сохраним изменения с при помощи клавиш Ctrl+S или специального значка вверху на панели инструментов. Готово!

В открывшемся окне в левой части 2 раза кликнем на Java Application после чего, будет создан новый под элемент с именем New_configuration , которое впоследствии в правой части можем изменить. В правой части также заполним поля Project и Main Class . Project должен содержать имя проекта, Main Class — имя главного класса, в нашем случае — HelloWorld (рис. 3.10). После чего нажмем Apply и Run .

В результате, в консоле будут напечатаны слова Hello World (рис. 3.11).

Для запуска программы в дальнейшем, достаточно нажимать специальный значок на панели инструментов, выбрав Hello World (рис. 3.12.).

На этом закончим данный урок.

Подробные инструкции по работе с Eclipse, правда на английском языке, можно найти по ссылке: http://www.vogella.com/articles/Eclipse/article.html

- свободный фреймворк для разработки модульных кросс-платформенных приложений.

Изначально проект разрабатывался в IBM как корпоративный стандарт IDE для разработки на разных языках под платформы IBM. Потом проект был переименован в и предоставлен для дальнейшего развития сообществу.

В первую очередь полноценная Java IDE , нацеленная на групповую разработку, снабжённая средствами для работы с системами контроля версий (поддержка CVS входит в поставку Eclipse, активно развиваются несколько вариантов SVN модулей, существует поддержка VSS и других). В силу бесплатности во многих организациях Eclipse - корпоративный стандарт для разработки приложений .

Второе назначение - служить платформой для разработки новых расширений (чем и завоевал популярность - любой разработчик может расширить Eclipse своими модулями). Таковыми стали C/C++ Development Tools (CDT), разрабатываемые инженерами QNX совместно с IBM, COBOL, FORTRAN, PHP средства от различных разработчиков. Множество расширений дополняет Eclipse менеджерами для работы с базами данных, серверами приложений и др.

С версии 3.0 Eclipse стал не монолитной IDE, поддерживающей расширения, а набором расширений. В основе лежат фреймворк OSGi и SWT/JFace, на основе которых разработан следующий слой - платформа для разработки полноценных клиентских приложений RCP (Rich Client Platform - (англ. rich-client applications). Платформа RCP служит основой для RCP-приложений, таких как Azareus и File Arranger. Следующий слой - платформа Eclipse, представляющая собой набор расширений RCP - редакторы, панели, перспективы, модуль CVS и модуль Java Development Tools (JDT).

Написана на Java , потому является платформо-независимым продуктом, за исключением библиотеки SWT, которая разрабатывается для всех распространённых платформ. Библиотека SWT используется вместо «медленного» Swing и полностью зависит от нижележащей платформы (операционной системы), что обеспечивает быстроту и натуральный внешний вид пользовательского интерфейса.

Основой Eclipse является платформа расширенного клиента (RCP - от англ. rich client platform). Её составляют следующие компоненты:


  • OSGi (стандартная среда поставки комплектов);
  • SWT (портируемый инструментарий виджетов);
  • JFace (файловые буферы, работа с текстом, );
  • Рабочая среда Eclipse (панели, редакторы, проекции, мастеры).
  • GUI в написан с использованием инструментария SWT. Последний, в отличие от Swing (который лишь эмулирует отдельные графические элементы используемой платформы), действительно использует графические компоненты данной системы. Пользовательский интерфейс Eclipse также зависит от промежуточного слоя GUI, называемого JFace, который упрощает построение пользовательского интерфейса, базирующегося на SWT.

    Гибкость обеспечивается за счёт подключаемых модулей, благодаря чему возможна разработка не только на Java, но и на других языках, таких как C/C++, Perl, Ruby, Python, PHP, ErLang и прочие.

    Локализация

    Начиная с версии 3.1.1 , выпущен языковой пак для русификации . Переведены на русский язык как графический интерфейс, так и документация.

    Для среды существует целый ряд свободных и коммерческих модулей. Первоначально среда была разработана для языка Java, но в настоящее время существуют многочисленные расширения для поддержки других языков, как например

    • C/С++ - CDT Eclipse’s C/C++ Development Tooling(англ.)
    • Perl - модуль EPIC, Eclipse Perl Integration(англ.)
    • PHP - PDT PHP Development Tools(англ.)
    • JavaScript - JSEclipse Javascript plugin for the Eclipse environment(англ.)
    • Python - Pydev, Python Development Environment(англ.)
    • Ruby - RDT, Ruby Development Tools(англ.)

    Существуют также модули для создания графических интерфейсов.

    Для разработки и получения отчетов и разработки аналитических BI-приложений в существует en:BIRT_Projec t.

    В встроена функция установки и обновления модулей через .

    Aptana (aptana.com) - дистрибутив Eclipse и plugin, поддерживающий разработку с использованием JavaScript (все основные JS Ajax библиотеки включены в состав дистрибутива), HTML, CSS, Ruby on rails, Adobe AIR.

    Оставьте свой комментарий!

    Eclipse - это платформа для создания программного обеспечения с Основана на Java и предоставляет возможность разрабатывать программы с плагинами. Содержит набор встраиваемых компонентов, среди которых - известный продукт Eclipse - среда разработки плагинов PDE. PDE позволяет расширить саму платформу, составленную из встроенных компонентов. Создатели инструментариев могут предложить собственные расширения и дать пользователям целостную среду разработки (IDE).

    Помимо языка Java, на котором написан Eclipse, среда разработки применяется и для других языков программирования. Создано много плагинов, поддерживающих языки C++, Fortran, Perl, Prolog, Python, Ruby и др. Платформа может быть основой для другого ПО, которое не имеет отношения к написанию программ, например telnet и СУБД. Еще один пример кода, основанного на Eclipse, - среда разработки PDT с базовыми функциями для редактирования и отладки PHP-приложений.

    Все права извращены

    Открытое ПО лицензировано для того, чтобы гарантировать права пользователей. Например, исходная программа должна предоставляться с правом ее изменять и распространять. Такой уровень защиты прав достигнут с помощью копилефта. Копирайт защищает авторское право, запрещая распространение программ в том случае, когда пользователь этим правом не обладает. Копилефт также требует покрытия лицензией распространяемого ПО без изменений. При этом суть авторского права становится противоположной. Копилефт применяет копирайт не для сохранения прав разработчиков, а для передачи их пользователям.

    Поэтому есть опасения и сомнения, что открытые программы приведут к потере интеллектуальной собственности, так как copyleft распространится и на другие части ПО. Иначе говоря, лицензия потребует, чтобы все приложение, содержащее открытый исходный код, распространялось с такими же правами. Это справедливо для General Public License (GNU) - под ней распространяется Linux. Но есть разрешения, которые обеспечивают другое отношение общественных и коммерческих интересов.

    OSI является некоммерческой организацией, которая чётко определяет, что такое открытый исходный код, и одобряет те лицензии, которые удовлетворяют её критериям. Платформа Eclipse распространяется по EPL, открытой лицензии, сертифицированной OSI и облегчающей ее коммерческое применение с сохранением лояльности авторов открытого ПО.

    Создатели плагинов либо пользователи среды разработки программ должны публиковать любой задействованный либо модифицируемый ими код Eclipse, но могут лицензировать собственные дополнения тем способом, какой им нравится. Передачи прав на них как на открытое программное обеспечение не требуется, как и обнародования исходников.

    И хотя многие не станут пользоваться Eclipse для создания собственных разработок, доступность исходного кода платформы имеет большое значение не только благодаря отсутствию платы, но и потому, что оказывает содействие инновациям и стимулирует программистов вносить собственный продукт в качестве вклада в общее дело. Главная причина этого - чем больше в проект вкладывается труда, тем значимее он для всех. Если он приносит пользу, то число разработчиков увеличивается еще больше и вокруг проекта создается сообщество, похожее на те, которые возникли около Linux и Apache.

    Некоммерческая организация

    Eclipse - среда разработки, библиотеки и инструментарий для создания, развертывания и управления ПО, а также сообщество его создателей. Создана платформа компанией IBM в 2001 г. при поддержке поставщиков ПО.

    Фонд Eclipse учрежден в 2004 г. Является некоммерческим объединением, поддерживающим проекты платформы и улучшающим общество разработчиков и систему взаимодополняющих программ и сервисов. Сегодня в экосистему Eclipse входят организации и частные лица индустрии ПО.

    Фонд осуществляет контроль и управляет проектами платформы. Он обслуживает сообщество, а разработчики, которых зовут коммитерами, в штате не состоят. Они являются сотрудниками других организаций или независимыми программистами, добровольно жертвующими своим личным временем для работы в проекте.

    Eclipse: характеристики платформы

    • Создание различных инструментов разработки программ.
    • Неограниченное количество поставщиков инструментальных средств, в том числе независимых.
    • Поддержка инструментария для работы с различным контентом, например HTML, C, EJB, Java, JSP, GIF и XML.
    • Обеспечение полной интеграции внутри и между разным контентом.
    • Eclipse-среда разработки программ с или без него.
    • Работа в разных операционных системах, в том числе Linux, Windows, Solaris AIX, Mac OS X.
    • Использование Java, популярного языка написания инструментов.

    Eclipse: руководство по началу работы

    После первого запуска программы появляется приветствие. Пользователь может перейти к обзору и узнать новые функции, примеры или пройти обучение.

    Рабочее пространство составлено из панелей-представлений. Совокупность представлений именуется перспективой. Перспектива «Ресурсы», например, включает представления для редактирования, управления и просмотра проектов.

    Начинающие пользователи должны стартовать с «Основ инструментального пространства», где можно почерпнуть много информации, касающейся разных составляющих Eclipse и их взаимодействия.

    Работа с JDT

    Для знакомства с JDT можно открыть проект Eclipse Java. Для этого следует выбрать пункт меню "Файл" - "Новый" - "Проект Java", ввести имя проекта и нажать «Завершить».

    Чтобы сменить текущую перспективу, необходимо выбрать пункт меню "Окно" - "Открыть перспективу" - Java или открыть новое окно через "Окно" - "Новое окно" и выбрать другую перспективу.

    Перспектива содержит представления, которые предназначены для разработки на языке Java. В левом углу, сверху, расположена иерархия с пакетами Eclipse Java, классами, JAR-архивами и разными файлами, которая называется «Обозреватель пакетов». Главное меню при этом пополнилось на 2 пункта: Source и Refactor.

    Создание программы в JDT

    Чтобы создать приложение Java, следует нажать правой кнопкой по созданному ранее проекту и выбрать пункт "Новый" - "Класс". Во всплывшем диалоговом окне следует ввести имя класса. Под вопросом: «Какие заготовки методов вы хотите создать?» - указать public static void main(String args) и нажать «Завершить».

    В результате будет создана программа, содержащий введенный класс и пустой main(). Метод необходимо заполнить программным кодом (объявление j пропущено намеренно):

    public class Hello {

    public static void main (String args) {

    for(j=0; j<=5;j++)

    System.out.println(“Привет”);

    Во время набора можно заметить возможности редактора:

    • автодополнение;
    • проверка синтаксиса;
    • автозакрытие открывающейся скобки или кавычек.

    Автодополнение кода вызывается сочетанием клавиш Ctrl + пробел. При этом появится зависящий от контекста список опций, выбираемых клавиатурой или мышью, будь то перечень методов данного объекта или часть ключевого слова.

    Синтаксис проверяется с учетом инкрементной компиляции. Она происходит во время записи кода одновременно с его компилированием. Ошибки синтаксиса подчеркнуты красным, и левее их появляется точка красного цвета с белым косым крестом. Остальные ошибки обозначаются на полях в виде лампочки. Их можно исправить самостоятельно с помощью Quick Fix.

    Во введенном примере лампочка расположена напротив оператора for, потому что отсутствует объявление i. После двойного щелчка мышью на лампочке появится перечень возможных исправлений. В этом случае для j предлагается создать:

    • поле класса;
    • параметр метода;
    • локальную переменную.

    Если выбрать мышью один из вариантов, то можно увидеть результирующий текст.

    Двойной щелчок на необходимом варианте генерирует программный код.

    Запуск приложения

    При отсутствии ошибок компиляции приложение можно запустить через пункт меню «Пуск». Шага компиляции нет, так как она совершается во время сохранения кода. В появившемся диалоге «Конфигурация запуска», необходимые значения которого уже заданы, нужно щелкнуть мышью на кнопке Run справа, внизу. Внизу появится консоль с закладками и результатом работы приложения.

    Программа может быть запущена в отладчике. Прежде всего устанавливается контрольная точка в System.out.println() двумя щелчками мыши на сером поле левее окна редактирования, рядом с вызовом метода. В результате появится точка синего цвета. Выбрать меню "Пуск" - "Отладка". Окно конфигурации запуска появится снова. После нажатия кнопки «Пуск» появится перспектива отладки с новыми представлениями.

    В представлении «Отладка» слева, вверху, расположен стек вызовов и для управления ходом работы программы. Панель содержит кнопки остановки, продолжения и завершения работы приложения, выполнения и пропуска следующего оператора и возврата из метода. Справа вверху расположен ряд панелей с закладками: переменные, контрольные точки, выражения и экран. При выборе закладки переменных можно увидеть значение переменной j.

    Подробные данные о каждом из представлений может дать контекстная подсказка. Нужно лишь щёлкнуть мышью на заголовке панели и нажать F1.

    Дополнительные плагины

    Среды разработки программного обеспечения, которые предназначены для их изменения, компилирования и отладки, в Eclipse дополнены компонентами, которые способны моделировать, автоматизировать построение, тестировать модули, производительность, управлять конфигурацией и версиями.

    Система управления исходниками CVS позволяет проводить над ними. При этом вносимые изменения не смешиваются. Это важная и неотъемлемая часть Eclipse.

    Среда разработки находится на сайте eclipse.org. Плагины расположены в каталоге Plug-in Central.

    Архитектура

    Основа платформы - насыщенные функционально клиенты RCP. Упрощенно их можно представить набором плагинов, используемых при разработке программ. Также есть дополнительные рекомендуемые составляющие и необязательные.

    Основные компоненты следующие:

    • Среда выполнения определяет модель компонентов на основе спецификации OSGi, расширений и точек расширения. Также обеспечивает добавочными сервисами, такими как системный журнал и параллелизм.
    • SWT-пакет содержит виджеты функций Eclipse и интерфейса пользователя. Имеет надстройку с классами, облегчающими создание графических приложений.
    • Пространство инструментов включает перспективы, представления и окна редактирования.
    • Компонент «Помощь» обеспечивает поддержку пользователей в виде справочной системы или интерактивного списка задач.
    • Плагин «Обновление» позволяет получить новейшую версию ПО.
    • Компонент «Команда» предлагает инфраструктуру для подключения собственных

    Платформа, созданная IBM, стала полнофункциональной системой с открытым кодом. Ее участниками являются свыше сотни компаний. Хотя идеи о создании таких систем были и раньше, продуманный, надёжный и элегантный дизайн Eclipse позволил ей занять передовые позиции.

    Похожие статьи