Eclipse: различия между версиями
John BOT (обсуждение | вклад) м Robot: Interwiki standardization |
Weisband (обсуждение | вклад) Нет описания правки |
||
Строка 57: | Строка 57: | ||
=== Eclipse PDT === |
=== Eclipse PDT === |
||
[[:w: Eclipse_PDT|Eclipse PDT]] |
[[:w: Eclipse_PDT|Eclipse PDT]] |
||
== Применение == |
|||
=== Веб-проект на 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..." и внесите |
|||
/HalloServlet |
|||
* '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> Hallo, 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/HalloServlet Убедитесь в появлении текста "Hallo, my first servlet is alive!". |
|||
* Измените написание выдаваемого сервлетом текста в исходнике и снова запустите проект. Выдаваемый текст не изменился. |
|||
Не отчаивайтесь - просто освежите окно броузера. |
|||
== Glossary == |
== Glossary == |
Версия от 10:05, 2 марта 2012
Eclipse (произносится «и-кли́пс», от английского «затмение»)
Начало работы
Что это?
Eclipse -- фреймворк (каркас) для разработки (конструирования) десктоп-программ с графическим интерфейсом (и без).
Каркас расширяется при помощи плагинов. Наиболее известные, так называемые IDE-плагины:
- Java plug-in, так как сам Eclipse-фреймворк написан на языке Java
- C/С++ plug-in, так как язык C/C++ наиболее распространен в свободном сообществе
- PHP
- С#
- xtml
Eclipse-фреймворк применяется не только как базис интерактивных программ, и не только с языками C/C++/Java, это универсальный фреймворк.
Лицензия
Eclipse-фреймворк лицензируется для использования по одной из свободных лицензий, первоначально Common Public License, ныне - Eclipse Public License.
Эти лицензии IBM признаны свободными и одобрены FSF, хотя и не защищают от разворовывания public domain, как GPL.
Это компромиссные лицензии, которые позволяют ортодоксальному бизнесу скрывать знания в закрытых Эклипс-плагинах, защищать свои know-how (ноу-хау, секрет производства) и получать конкурентные преимущества над другими людьми.
Workspace
При старте Эклипс запросит workspace — рабочее пространство, имя каталога, в котором будет сохранен результат работы.
- Можно оставить workspace по умолчанию (и отменить запрос на будущее)
- восстановить запрос: Window --> Preferences... --> General --> Startup and Shutdown --> Prompt for workspace on startup
- указать workspace в командной строке:
eclipse -data /.../
Одновременно только один экземпляр Иклипс работает над одним workspace, если надо запустить еще один экземпляр -- необходимо указать другой workspace.
Архитектура
Подробнее о сборке программ из компонентов Eclipse-фреймворк см. Eclipse/Architecture.
Плагины
Любая программа, собранная на основе фреймворка Иклипс, представляет из себя плагин или feature (фитче — группу плагинов).
Одна из самых важных сборок — «Eclipse IDE», включает инструмент сборки — PDT(Plugin Development Tools) инструмент модификации и создания новых компонент — JDT(Java Development Tools) /Джава дивелопмент тулс/, etc.
Количество плагинов огромно, только малая часть будет перечислена в разделе Eclipse/Plugins.
Eclipse JDT
Eclipse CDT
Eclipse/CDT — модуль для программирования на C++
Eclipse PDT
Применение
Веб-проект на 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..." и внесите
/HalloServlet
- '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( "
Hallo, my first servlet is alive!
" );
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/HalloServlet Убедитесь в появлении текста "Hallo, my first servlet is alive!".
- Измените написание выдаваемого сервлетом текста в исходнике и снова запустите проект. Выдаваемый текст не изменился.
Не отчаивайтесь - просто освежите окно броузера.
Glossary
- Eclipse SDK (произносится «иклипс эс-ди-кей») — Eclipse Platform + JDT + PDE
- Feature (произносится «фитчэ») — иклипс-приложение, RCP-программа, состоящая из нескольких плагинов. Feature состоит из manifest-файла, плагинов, фрагментов, других файлов, ... Формат упаковки — JAR
- Feature manifest editor — один из редакторов PDE-перспективы, предназначенный для редактирования manifest-файла, описывающего Feature
- Fragment — фрагмент плагина. Удобен для до-определения новых свойств уже инсталлированного плагина, таких как локализация, изолирование зависимостей от платформ, распределения работ , ...
- Perspective (произносится «пэ-спектив») — перспектива, набор редакторов и вьюеров для определенного контекста