Разница между развертыванием WAR и папки Build

1

Вопрос 1: Могу ли я спросить, в чем разница между развертыванием java webapp с ним WAR файлом и просто копированием/вставкой папки сборки в папку tomcat webapp?

Вопрос 2. Как-то мне сказали развернуть мой проект, просто переименовав папку /build/web в /build/, затем скопируйте и вставьте эту папку в папку tomcat/webapp. Tomcat действительно обслуживал веб-приложение, и я мог получить к нему доступ через url. Но проблема в том, что я подозреваю, что мои системные переменные не были установлены. Я запускаю сервлет и помещаю этот код в этот init (ServletConfig config) метод:

System.setProperty("LogPath","D:/Test/logs");

И делаю это в моих log4j.properties

log4j.appender.file.FILE=${LogPath}/wrapper.log

wrapper.log не найден в указанном каталоге, но stdout.log находится в папке tomcat/logs.

Я уверен, что метод init() был запущен, потому что у меня есть кварцевый планировщик. Я подозреваю, что мой System.setProperty не был установлен. Любой намек?

Обновление: со всем тем же исходным кодом у меня нет проблем, если я развертываю файл WAR. $ {LogPath} в log4j.properties работает должным образом.

Теги:
web-deployment
java-ee
war

1 ответ

0
Лучший ответ

Позвольте мне ответить вам на первый вопрос.

WAR файл - это zip-архив с другим именем. Когда вы размещаете этот файл на сервере Tomcat, он распаковывает этот файл в свою папку, как вы делали бы это с помощью copy-paste. Если вы просто разрабатываете свой собственный проект в своей собственной среде, и вы не хотите его распространять, вам не нужно создавать военный файл. Но если вы хотите распространять этот проект, я рекомендую вам создать военный файл. Один файл легче отправить.

Подробнее о Википедии http://en.wikipedia.org/wiki/WAR_%28file_format%29

Ещё вопросы

Сообщество Overcoder
Наверх
Меню