Eclipse
Eclipse (произносится «и-кли́пс», от английского «затмение»)
Начало работы
[править]Что это?
[править]Eclipse — фреймворк (каркас) для разработки (конструирования) десктоп-программ с графическим интерфейсом (и без).
Каркас расширяется при помощи плагинов. Наиболее известные, так называемые IDE-плагины:
- Java plug-in, так как сам Eclipse-фреймворк написан на языке Java
- C/С++ plug-in, так как язык C/C++ наиболее распространен в свободном сообществе
- PHP
- С#
- WTP
Eclipse-фреймворк применяется не только как базис интерактивных программ, и не только с языками C/C++/Java, это универсальный фреймворк.
Лицензия
[править]Eclipse-фреймворк лицензируется для использования по одной из свободных лицензий, первоначально Common Public License, ныне - Eclipse Public License.
Эти лицензии IBM признаны свободными и одобрены FSF, хотя и не защищают от разворовывания public domain, как GPL.
Это компромиссные лицензии, которые позволяют ортодоксальному бизнесу скрывать знания в закрытых Эклипс-плагинах, защищать свои know-how (ноу-хау, секрет производства) и получать конкурентные преимущества над другими людьми.
Workspace
[править]При старте Eclipse запросит workspace — рабочее пространство, имя каталога, в котором будет сохранён результат работы. Можно:
- оставить workspace по умолчанию (и отменить запрос на будущее);
- восстановить запрос: Window → Preferences → General → Startup and Shutdown → Workspaces → Prompt for workspace on startup;
- указать workspace в командной строке:
eclipse -data /…/
Одновременно только один экземпляр Eclipse работает над одним workspace. Если надо запустить ещё один экземпляр, необходимо указать другой workspace.
Архитектура
[править]Подробнее о сборке программ из компонентов Eclipse-фреймворк см. Eclipse/Architecture.
Плагины
[править]Любая программа, собранная на основе фреймворка Eclipse, представляет собой плагин или feature (группу плагинов).
Одна из самых важных сборок — Eclipse IDE — включает:
- инструмент сборки — PDT (Plugin Development Tools);
- инструмент модификации и создания новых компонент — JDT (Java Development Tools)
- и другие инструменты.
Количество плагинов огромно. Только малая часть перечислена в разделе Eclipse/Plugins.
Eclipse JDT
[править]Eclipse CDT
[править]Eclipse/CDT — модуль для программирования на C++
Eclipse PDT
[править]JSDT
[править]JSDT - JavaScript Development Tools.
Применение
[править]Веб-проект на Eclipse с Tomcat
[править]Последующее описание было сделано на основе нескольких туториалов и проверено автором.
Установка
[править]- Установите актуальную версию Eclipse. Последние версии содержат WTP-плагин, для старых его нужно инсталлировать. Это описание проверялось с Eclipse 3.6 и Eclipse Indigo
- Установите Apache Tomcat (Пример создан с версией 6.0 и проверен с версией 7.0.26).
- После стартаTomcat-а под http://localhost:8080 вы должны увидеть приветствие. Остановите Tomcat с помощью '<tomcat-root>/bin/shutdown.bat' или через Computer->Управление-> 'Службы и приложения' (Windows 7).
- Просмотрите настройки Tomcat-а в '<tomcat-root>/conf/server.xml' и '<tomcat-root>/conf/web.xml' и проверьте лог-файлы в '<tomcat-root>/logs'.
- Вставьте в '<tomcat-root>/conf/tomcat-users.xml' после '<tomcat-users>' следующие строки:
<role rolename="admin"/> <role rolename="manager"/> <user username="МоеИмя" password="МойПароль" roles="admin,manager"/> Если вы опять стартуете Tomcat, вы сможете администрировать его под 'http://localhost:8080/manager'.
Связь Eclipse с Tomcat-ом
[править]- Стартуйте Eclipse и установите его связь с вашей Tomcat-инсталляцией:
'File' | 'New' | 'Other...' | '[+] Server' | 'Server' | 'Next >' | '[+] Apache' | 'Tomcat v6.0 Server' | 'Next >'.
- Вставьте в 'Tomcat installation directory' ваш Tomcat-каталог (например 'C:\Java\Tomcat') и нажмите 'Finish'.
- Выберите Java EE перспективу через
'Window' | 'Open Perspective' | 'Other...' | 'Java EE' | 'OK' и кликните внизу на закладку 'Servers'. Вы увидите там 'Tomcat v6.0 Server'. С помощью символов или правой кнопки мыши вы можете сервер стартовать или остановить.
- Сделайте двойной клик на строку сервера
- В появившемся в главном окне Eclipse "Overview" сервера имеются дополнительные возможности конфигуации сервера.
- Нажмите символ дискетки, чтобы запомнить изменение конфигурации сервера, если вы ее изменили.
Создание веб-приложения (сервлета)
[править]- Убедитесь, что Tomcat находится в остановленном состоянии.
- 'File' | 'New' | 'Project...' | '[+] Web' | 'Dynamic Web Project' | 'Next >'.
- Внесите:
Project name: myProject Use default location: Да Target Runtime: Apache Tomcat v7.0 Configurations: Default Configuration for Apache Tomcat v7.0 EAR membership: Нет
- 'Next >'
- Если вы в Project Facets Dialog получите вопрос о Java-версии, внесите, по крайней мере что-то вроде '5.0'.
- 'Next >'
- Внесите 'Web Module':
Context Root: myProject Content Directory: WebContent Generate web.xml deployment descriptor: Да
- 'Finish'
- Кликните правой кнопкой на имя каталога WebContent вашего проекта, выберите 'New' | 'Servlet' и внесите:
Java package: myservletpackage Class name: MyFirstServlet
- 'Next >'
- Под URL Mappings отметьте /MyFirstServlet, нажмите кнопку "Edit..." и внесите
/HelloServlet
- 'Finish'
- Проверьте в '<Eclipse-workspace>\MyProjekt\WebContent\WEB-INF'-каталоге, в файле'web.xml' описаны ли там '<servlet>' и '<servlet-mapping>' - элементы. Если нет - что-то не сложилось, дальше можно не продолжать.
- Измените текст MyFirstServlet.java на:
package myservletpackage; import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class MyFirstServlet extends HttpServlet { static final long serialVersionUID = 1L; @Override public void doGet( HttpServletRequest requ, HttpServletResponse resp ) throws ServletException, IOException { resp.setContentType( "text/html" ); PrintWriter out = resp.getWriter(); out.println( "<html>" ); out.println( "<h3> Hello, my first servlet is alive! </h3>" ); out.println( "</html>" ); out.close(); } }
Запуск веб-приложения
[править]- Кликните на имя ваш сервлет правой кнопкой и выберите: 'Run As' | 'Run on Server'.
- Если возникнет диалог 'Define a New Server':
- Выберите 'Tomcat v6.0 Server at localhost' и отметьте галочкой 'Always use this server when running this project'. 'Finish'.
- Если Tomcat не стартовал автоматически, стартуйте его через вкладку Servers.
- В адресном поле броузера наберите:
http://localhost:8080/myProject/HelloServlet Убедитесь в появлении текста "Hello, my first servlet is alive!".
- Измените написание выдаваемого сервлетом текста в исходнике и снова запустите проект. Выдаваемый текст не изменился.
Не отчаивайтесь - просто обновите окно броузера.
Глоссарий
[править]- Eclipse SDK (инструментарий разработчика) — Eclipse Platform + JDT + PDE
- Feature — иклипс-приложение, RCP-программа, состоящая из нескольких плагинов. Feature состоит из manifest-файла, плагинов, фрагментов, других файлов. Формат упаковки — JAR.
- Feature manifest editor — один из редакторов PDE-перспективы, предназначенный для редактирования manifest-файла, описывающего Feature.
- Fragment — фрагмент плагина. Удобен для доопределения новых свойств уже инсталлированного плагина, таких как локализация, изолирование зависимостей от платформ, распределения работ.
- Perspective (перспектива) — набор редакторов и вьюеров для определенного контекста.