Как правильно управлять веб-приложениями Tomcat в Eclipse?

Есть много способов сделать это. Вот несколько примеров.

1.
if (msg.content === '+1') {
    i = i + 1
    msg.reply("Counter: " +i)
}

2.
if (msg.content === '+1') {
    i++
    msg.reply("Counter: " +i)
}

3.
if (msg.content === '+1') {
    ++i
    msg.reply("Counter: " +i)
}
9
задан Arjan Tijms 24 June 2013 в 19:53
поделиться

4 ответа

Вы можете использовать Eclipse и Tomcat так, как упоминаете. Сначала ознакомьтесь с основными принципами его настройки:

  1. В настройке представления «Серверы» установите новый сервер Tomcat, указывающий на ваш TOMCAT_HOME
  2. Убедитесь, что ваш проект представляет собой «веб-проект» Eclipse. Вам может понадобиться создать фиктивный файл и скопировать некоторые файлы в .settings (посмотрите файлы wst).
  3. Разверните ваш проект в Tomcat, щелкнув правой кнопкой мыши по серверу в представлении «Серверы» и «Добавить и удалить проекты ...», чтобы добавить свой проект на сервер.

Вы можете запустить свой сервер и протестировать его так же, как вы управляли Tomcat за пределами Eclipse. Если вы запускаете сервер в режиме отладки, вы можете установить точки останова и пошагово выполнить код.

Что касается того, когда вам нужно будет перезапустить сервер, Eclipse обычно довольно хорош в автоматическом развертывании изменений. Вам почти никогда не потребуется перезапускаться для изменений страниц jsp. Если вы измените класс, он автоматически развернет изменения (обычно), если вы измените тело метода. Если вы измените сигнатуру класса (добавьте или удалите метод или измените аргументы для него), вам почти всегда нужно будет перезапустить. Любые изменения в файлах конфигурации (web.xml или аналогичные) также почти всегда требуют перезагрузки.

Для перезапуска просто нажмите кнопку «Отладка» или «Выполнить» в представлении «Сервер». Все ваши изменения будут перенесены в Tomcat.

Следует обратить внимание на то, что в конфигурации по умолчанию ваш каталог «webapp» в TOMCAT_HOME не будет использоваться. Вместо этого он будет использовать папку в каталоге рабочей области Eclipse (WORKSPACE / .metadata / .plugins / org.eclipse.wst.server.core / tmp0).

Если вы измените класс, он автоматически развернет изменения (обычно), если вы измените тело метода. Если вы измените сигнатуру класса (добавьте или удалите метод или измените аргументы для него), вам почти всегда нужно будет перезапустить. Любые изменения в файлах конфигурации (web.xml или аналогичные) также почти всегда требуют перезагрузки.

Для перезапуска просто нажмите кнопку «Отладка» или «Выполнить» в представлении «Сервер». Все ваши изменения будут перенесены в Tomcat.

Следует обратить внимание на то, что в конфигурации по умолчанию ваш каталог «webapp» в TOMCAT_HOME не будет использоваться. Вместо этого он будет использовать папку в каталоге рабочей области Eclipse (WORKSPACE / .metadata / .plugins / org.eclipse.wst.server.core / tmp0).

Если вы измените класс, он автоматически развернет изменения (обычно), если вы измените тело метода. Если вы измените сигнатуру класса (добавьте или удалите метод или измените аргументы для него), вам почти всегда нужно будет перезапустить. Любые изменения в файлах конфигурации (web.xml или аналогичные) также почти всегда требуют перезагрузки.

Для перезапуска просто нажмите кнопку «Отладка» или «Выполнить» в представлении «Сервер». Все ваши изменения будут перенесены в Tomcat.

Следует обратить внимание на то, что в конфигурации по умолчанию ваш каталог «webapp» в TOMCAT_HOME не будет использоваться. Вместо этого он будет использовать папку в каталоге рабочей области Eclipse (WORKSPACE / .metadata / .plugins / org.eclipse.wst.server.core / tmp0).

Если вы измените сигнатуру класса (добавьте или удалите метод или измените аргументы для него), вам почти всегда нужно будет перезапустить. Любые изменения в файлах конфигурации (web.xml или аналогичные) также почти всегда требуют перезагрузки.

Для перезапуска просто нажмите кнопку «Отладка» или «Выполнить» в представлении «Сервер». Все ваши изменения будут перенесены в Tomcat.

Следует обратить внимание на то, что в конфигурации по умолчанию ваш каталог «webapp» в TOMCAT_HOME не будет использоваться. Вместо этого он будет использовать папку в каталоге рабочей области Eclipse (WORKSPACE / .metadata / .plugins / org.eclipse.wst.server.core / tmp0).

Если вы измените сигнатуру класса (добавьте или удалите метод или измените аргументы для него), вам почти всегда нужно будет перезапустить. Любые изменения в файлах конфигурации (web.xml или аналогичные) также почти всегда требуют перезагрузки.

Для перезапуска просто нажмите кнопку «Отладка» или «Выполнить» в представлении «Сервер». Все ваши изменения будут перенесены в Tomcat.

Следует обратить внимание на то, что в конфигурации по умолчанию ваш каталог «webapp» в TOMCAT_HOME не будет использоваться. Вместо этого он будет использовать папку в каталоге рабочей области Eclipse (WORKSPACE / .metadata / .plugins / org.eclipse.wst.server.core / tmp0).

Для перезапуска просто нажмите кнопку «Отладка» или «Выполнить» в представлении «Сервер». Все ваши изменения будут перенесены в Tomcat.

Следует обратить внимание на то, что в конфигурации по умолчанию ваш каталог «webapp» в TOMCAT_HOME не будет использоваться. Вместо этого он будет использовать папку в каталоге рабочей области Eclipse (WORKSPACE / .metadata / .plugins / org.eclipse.wst.server.core / tmp0).

Для перезапуска просто нажмите кнопку «Отладка» или «Выполнить» в представлении «Сервер». Все ваши изменения будут перенесены в Tomcat.

Следует обратить внимание на то, что в конфигурации по умолчанию ваш каталог «webapp» в TOMCAT_HOME не будет использоваться. Вместо этого он будет использовать папку в каталоге рабочей области Eclipse (WORKSPACE / .metadata / .plugins / org.eclipse.wst.server.core / tmp0).

5
ответ дан 3 November 2019 в 07:14
поделиться

Обычно вы должны повторно опубликовать приложение, чтобы получить последние изменения, не забывайте сначала синхронизироваться с файловой системой в случае, если ваши файлы были изменены внешне. Вы можете указать, что ваше приложение автоматически перезагружается при изменении, ищите атрибут Auto-reload в server.xml вашего проекта конфигурации сервера. Когда установлено значение true, tomcat автоматически перезагрузит ваше приложение. Кстати, это не всегда хорошая идея. Модифицированные JSP должны работать автоматически, не нужно перезапускать приложение.

0
ответ дан 3 November 2019 в 07:14
поделиться

Если вы измените структуру класса, который уже был загружен и использован (добавление / удаление членов, изменение сигнатуры метода и т. Д.), Ваши изменения кода не будут отражены. Это не проблема затмения, а проблема JVM. Если вы вносите простые изменения кода, например, изменения логики в существующем методе, ваши изменения вступят в силу после компиляции и повторного развертывания класса. Независимо от этого, если вы измените публичную константу, вам придется перестроить свой проект (ы).

0
ответ дан 3 November 2019 в 07:14
поделиться

Я обнаружил, что важно понять две вещи:

  • Eclipse не распознает автоматически, были ли файлы изменены вне Eclipse. нажатие кнопки «Обновить» в проекте делает то же самое, и F5. Вы также можете изменить настройку на автоматическое обновление, которое, однако, не обнаруживает изменения мгновенно (по моему чутью, задержка составляет до 10 секунд)

  • Работа с серверами подразумевает «публикацию» файлов в Tomcat. Обычно это происходит автоматически в течение секунды после любого изменения. Изменение многих классов может вызвать множество перезагрузок сервера, что может быть затруднительным, если перезагрузка контекста занимает некоторое время (что, безусловно, происходит со сложными приложениями Spring). Поэтому я изменил настройку, чтобы не публиковать автоматически (дважды щелкните экземпляр сервера)

0
ответ дан 3 November 2019 в 07:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: