Затмение не публикует web.xml, заполненный Maven
Продолжая свой предыдущий вопрос ( Maven: как заполнить переменную в файле web.xml), я понял, что значения записаны в web.xml
не передаются развернутым web.xml
, Позвольте мне показать, что происходит: я запускаю веб-приложение в Tomcat через WTP Eclipse. в web.xml
, У меня есть это context-param
:
<context-param>
<param-name>producao</param-name>
<param-value>${ambiente.producao}</param-value>
</context-param>
ambiente.producao
заполняется в соответствии с выбранным профилем Maven:
<profiles>
<profile>
<id>prod</id>
<properties>
<ambiente.producao>true</ambiente.producao>
</properties>
</profile>
<profile>
<id>desenv</id>
<properties>
<ambiente.producao>false</ambiente.producao>
</properties>
</profile>
</profiles>
Кроме того, у меня есть ServletContextListener
реализация, которая будет печатать значение producao
пары:
public void contextInitialized(ServletContextEvent event) {
logger.warn(event.getServletContext().getInitParameter("producao"));
}
Благодаря совету Фреда Брикона, я смог правильно заполнить Maven ambiente.producao
переменная в web.xml
скопированы в target
каталог.
Тем не менее, когда я запускаю Tomcat и печатаю параметр init производства, он показывает ${ambiente.producao}
, На самом деле, когда я открываю web.xml
присутствует в каталоге [WORKSPACE_DIR]/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/sinpo-web/WEB-INF
, producao
не заполнено, как должно быть. Как будто Eclipse (или WTP или Maven) выбрал исходный файл вместо заполненного.
Поэтому я спрашиваю, существует ли какая-то недостающая конфигурация, необходимая для публикации Maven (или Eclipse) с использованием файлов в target
каталог вместо исходного файла.
Спасибо,
Рафаэль Афонсо