Я должен отобразить номер сборки на своей index.jsp странице
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8" />
<title>Title (build: BUILDNUMBER )
</head>
Номер сборки может быть предоставлен знатоком в *.properties файл. Что лучший способ состоит в том, чтобы считать *.properties файл и отобразить свойство с Spring?
Вы можете загрузить файл .properties
в качестве источника сообщений локализации (используя ResourceBundlerMessageSource
) и получить к нему доступ в JSP, используя
или
:
src/main/resources/buildInfo. properties
:
buildNumber=${buildNumber}
где buildNumber
выставляется, как предлагает Роланд Шнайдер.
Контекстная конфигурация:
<bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
<property name = "basenames"><value>buildInfo</value></property>
<!-- Or a comma separated list if you have multiple .properties files -->
</bean>
JSP файл:
Version: <spring:message code = "buildNumber" />
pom.xml
:
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
Предупреждение : Фильтрация ресурсов не работает таким образом для файлов .jsp. Как отметил Паскаль Тивент (спасибо), index.jsp не является ресурсом, а принадлежит веб-приложению.
Я не знаю точного ответа на ваш вопрос, но вы можете жестко запрограммировать номер сборки в файл index.jsp с помощью maven напрямую, когда файл index.jsp копируется в целевой каталог. Вам нужно только вставить переменную в index.jsp и настроить maven-resource-plugin, чтобы включить фильтрацию.
Пример:
index.jsp
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8" />
<title>Title (build: ${buildNumber} )
</head>
Конфигурация Maven (отрывок из pom.xml)
<build>
<!-- Enable Resource Filtering -->
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
<!-- Fetch the SVN build-number into var ${buildNumber} -->
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>buildnumber-maven-plugin</artifactId>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>create</goal>
</goals>
</execution>
</executions>
<configuration>
<doCheck>false</doCheck>
<doUpdate>false</doUpdate>
</configuration>
</plugin>
</plugins>
</build>
Для получения дополнительной информации о фильтрации см. Руководство по фильтрации Maven