vel*_*elo 6 build version war maven jsf-2
我想在JSF应用程序的页脚上显示构建版本和构建日期.这些页面是XHTML.我正在寻找从pom.xml或其他工件获取信息的方法.
我发现以下使用maven-replace插件. http://www.vineetmanohar.com/2010/09/how-to-display-maven-project-version-in-your-webapp/
你还有其他技术吗?
我正在寻找与JSF相似的东西 - 显示构建日期
noa*_*hlz 15
一种方法可行:使用Maven过滤将文件放入包含所需信息的WAR或JAR中.然后在Java Web应用程序中,将该文件的内容作为ClassPath资源加载InputStream.
在src/main/resources包含类似下面的内容下创建一个文件(比如说"buildInfo.properties"):
build.version=${project.version}
build.timestamp=${timestamp}
Run Code Online (Sandbox Code Playgroud)
请注意,由于存在缺陷,您需要timestamp在<properties>pom块中按如下方式定义属性:
`<timestamp>${maven.build.timestamp}</timestamp>`
Run Code Online (Sandbox Code Playgroud)
在构建期间,将使用project.version的值过滤此文件(<version>当您指定时,将在pom.xml中定义该值)
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
Run Code Online (Sandbox Code Playgroud)
在您的Java代码(JSF bean,无论如何)中,使用如下代码:
InputStream in = getClass().getClassLoader().getResourceAsStream("buildInfo.properties");
if (in == null)
return;
Properties props = new Properties();
props.load(in);
String version = props.getProperty("build.version");
// etc.
Run Code Online (Sandbox Code Playgroud)
如果您的框架支持从类路径加载属性作为"资源包"(例如在Spring中),则不需要加载属性文件的前面的Java代码.
| 归档时间: |
|
| 查看次数: |
8346 次 |
| 最近记录: |