Как правильно развернуть и структурировать проекты в Eclipse для Tomcat? - PullRequest
2 голосов
/ 16 декабря 2010

Я - относительно новый Java-разработчик, которого бросили в глубокий конец, мой обычный набор навыков заключается в продуктах Microsoft и C #.

Однако мне удалось написать хороший веб-сервис с использованием Restlet и включением Toplink, а также делать некоторые вещи CRUD для баз данных и т. Д. И т. Д.

Я разработал это в Eclipse против Tomcat 5.5. Я следовал инструкциям и примерам и сумел собрать что-то, что работает.

У меня были все мои jar-файлы в каталоге WebContent / WEB-INF / lib моего проекта - я скоро понял, что когда я экспортирую это как WAR-файл и внедряю в Tomcat, он берет эти jar-файлы с собой и сохраняет их локально к заявке.

Хорошо, но когда вы пытаетесь удалить приложение, оно выполняет его только частично, поскольку Tomcat «держит» некоторые банки, которые он использовал, то есть Oracle JDBC и Toplink. Это имеет смысл, так как веб-сервис использовал эти jar-файлы, поскольку происходило прямое соединение с Oracle.

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

C: \ Program Files \ Apache Software Foundation \ Tomcat 5.5 \ common \ lib

(в моем случае). Это имело смысл, это логично, так как вы не хотите, чтобы на Tomcat загружалось множество приложений, ссылающихся на одни и те же банки. Поэтому я удалил все фляги из папки lib моих проектов и поместил их в общий каталог \ lib.

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

Я, очевидно, очень запутался с путями классов, путями сборки и всем этим, и, должно быть, все это неправильно понято, потому что я не эксперт по Java, так как я с готовностью признаю, что в значительной степени взломал это вместе - так Может ли кто-нибудь объяснить мне в терминах непрофессионалов, как я должен структурировать свой проект, чтобы он работал с банками, хранящимися в общей папке в Tomcat. Или есть какие-нибудь хорошие ресурсы в Интернете, чтобы объяснить мне, что я должен делать.

Надеюсь, все это имеет смысл ...

Вот фотография моего текущего проекта:

alt text

Ответы [ 3 ]

1 голос
/ 16 декабря 2010

Похоже, что вы не используете веб-проект WTP.

Если вы установили Eclipse Eclipse IDE для разработчиков Eclipse, в него уже встроен WTP.В противном случае здесь его сайт обновления -> http://download.eclipse.org/webtools/updates

После того, как вы установили WTP, вы должны создать «Динамический веб-проект».В общем, я бы рекомендовал размещать здесь только свой уровень представления (JSP, CSS, HTML) и помещать все чистые проекты Java в стандартный проект «Java», который вы позже добавите в качестве зависимости к «Динамическому веб-проекту».

WTP может запускать ваше веб-приложение в нескольких контейнерах, к счастью, поддерживается Tomcat.Вам нужно будет настроить его через Window-> Preferences-> Server-> Runtime Environments.

После настройки среды выполнения вы можете создать среду выполнения вашего сервера:

  1. Щелкните правой кнопкой мыши вПредставление «Серверы».
  2. Выберите «Создать» -> «Сервер»
  3. Выберите тип сервера: «Сервер Tomcat v.5.5»
  4. (Необязательно) Измените имя сервера так, чтобы оно имело смыслвы
  5. Выберите среду выполнения сервера: Это среда выполнения, которую вы настроили ранее
  6. Нажмите кнопку «Далее»
  7. Добавьте проект «Динамический веб-проект» в «Настроено»проекты: «панель»
  8. нажмите кнопку «Готово»

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

ПРИМЕЧАНИЕ. Из личного опыта я бы не рекомендовал использовать common / lib.Поместите все файлы, на которые опирается ваше веб-приложение, в файл WAR.Если вас беспокоит отслеживание зависимостей, начните изучать Maven и m2eclipse.

0 голосов
/ 17 декабря 2010

Перейдите в «Окно»> «Показать представление»> «Другие»> «Сервер»> «Серверы», ниже откроется вкладка «Серверы» с вкладкой «Консоль». Нажмите на свой сервер и затем F3, это откроет конфигурацию сервера.
Проверьте расположение сервера и убедитесь, что вы установили флажок Использовать установку tomcat (управляет установкой tomcat), затем нажмите вкладку Модули ниже, и она покажет ваши установленные модули, убедитесь, что модуль присутствует или добавьте его.

0 голосов
/ 16 декабря 2010

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...