我是Spring MVC、Tiles和Maven框架的新手,我希望有人能引导我朝着正确的方向,更好地实践更新平台相关属性。我有一个tiles.xml,它用JavaScript/CSS导入列表定义了JSP的路径。
<definition name="abc" extends="base.definition">
<put-attribute name="imports" value="/WEB-INF/jsp/imports.jsp" />
</definition>
在部署过程中,我想切换到导入JavaScript/CSS文件的缩小版本,这些文件列在不同的JSP文件中。
<put-attribute name="imports" value="/WEB-INF/jsp/importsMinified.jsp" />
我假设切换资源或重写这个tiles.xml或某种属性文件的内容,这些文件在mvn部署生命周期中定义了特定于环境的定义。然而,在完成这项任务方面,我找不到一个好的例子。如果有人经历过这种情况,你能告诉我什么是转换进口的更好解决方案吗?我也不确定划分为两个JSP文件是否是更好的解决方案。
谢谢你,
我不知道有哪个插件会专门为Tiles
做这件事,但你可以一直让maven过滤文件中的替换变量。
例如。。。
pom.xml
<build>
<resources>
<resource>
<directory>src/main/webapp/WEB-INF</directory>
<filtering>true</filtering>
<includes>
<include>**/tiles.xml</include>
</includes>
</resource>
</resources>
</build>
tiles.xml
<definition name="abc" extends="base.definition">
<put-attribute name="imports" value="/WEB-INF/jsp/${importsjsp}" />
</definition>
在这里,您可以选择如何管理imports.path
属性:
- 在命令行
mvn -Dimportsjsp=importsMinified.jsp package
上传递属性 - 在pom中添加一个具有不同值的
profiles
节。通过-P
开关显式调用maven来选择您的配置文件,或者满足激活要求