我在pom.xml上具有如下的maven属性
pom.xml
<profile>
<id>local</id>
<properties>
<env>local</env>
</properties>
</profile>
<profile>
<id>dev</id>
<properties>
<env>dev</env>
</properties>
</profile>
<profile>
<id>prod</id>
<properties>
<env>prod</env>
</properties>
</profile>
</profiles>
如果我想从jsp获得什么env值 我该怎么办? 我想使用
这样的值<c:when test=env=='local'>
</c:when>
<c:when test=env=='dev'>
</c:when>
<c:when test=env=='env'>
</c:when>
答案 0 :(得分:0)
您需要使用maven resource filtering,其工作原理如下:
在src / main / resources中创建build.properties,例如:
env=${env}
然后将资源过滤器添加到pom
<properties>
<java.version>1.8</java.version>
<env>prod</env>
</properties>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>
构建完成后,属性将如下所示:
greg@greg-XPS-13-9360:~/work/jsp-example$ cat target/classes/build.properties
env=prod
对于example我使用的是Spring boot,您可以按常规方式将它们注入JSP。
请注意,如果您使用Spring Boot,则build.properties的格式应为
greg@greg-XPS-13-9360:~/work/jsp-example$ cat src/main/resources/build.properties
env=@env@