Затмение не публикует 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 каталог вместо исходного файла.

Спасибо,

Рафаэль Афонсо

0 ответов

Другие вопросы по тегам