Grails - 如何在我的应用程序中显示版本和构建日期/时间

标签 grails

我想知道是否有办法在我的 Grails 应用程序顶部显示版本和构建日期。

编辑:我应该说我正在寻找构建应用程序的日期/时间。

最佳答案

在您的主模板中,或任何地方。

<p style="float:right">Server version: <%=ApplicationHolder.application.metadata['app.version']%></p>

您可以使用 <g:if env="...">如果您愿意,可以通过环境进行限制。

构建日期比较棘手,可能并不意味着什么。你永远不会在同一天 build 两次吗?同一小时?我在构建之前将 svn 修订版粘贴到我的应用程序版本中以识别构建,如下所示:
_Events.groovy
eventWarStart = { type ->
    addSvnRevisionToAppVersion()
}

private def addSvnRevisionToAppVersion() {
    try {
        DAVRepositoryFactory.setup();
        SVNRepositoryFactoryImpl.setup();
        FSRepositoryFactory.setup();

        SVNClientManager clientManager = SVNClientManager.newInstance();
        SVNWCClient wcClient = clientManager.getWCClient();
        File baseFile = new File(basedir);
        SVNInfo svninfo = wcClient.doInfo(baseFile, SVNRevision.WORKING);

        def svnRevision = svninfo.getRevision().number;

        String oldVersion = metadata.'app.version'
        String newVersion
        if (oldVersion.matches(/.*\.r\d+/)) {
            newVersion = oldVersion.replaceAll(/\.r\d+/, ".r${svnRevision}");
        }
        else {
            newVersion = oldVersion + ".r${svnRevision}".toString()
        }
        metadata.'app.version' = newVersion
        metadata.persist()

    }
    catch (SVNException ex) {
        println "**************** SVN exception **************"
        println ex.getMessage();
    }
}

请注意,您可以附加 new Date() 而不是附加 svn 修订版。获取构建日期。

关于Grails - 如何在我的应用程序中显示版本和构建日期/时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6957938/

相关文章:

grails - Grails Fields插件使用<f:display>显示的自定义字段

rest - Grails Spring Security REST 插件 - token 存储失败

Grails 数据绑定(bind)和 transient

grails - 无法在 grails 2.3.6 中加载数据或为 FixtureLoader 1.2 创建加载程序

grails - 如何在 Grails 中复制域对象?

grails - 如何在多个列上使用唯一约束而不是创建复合键

grails - 如何在Grails gsp列表中显示结果

grails - 如何发送 grails <g :link> params as POST

grails - 如何为Intellij Community 2016.2.5启用grails

Grails - ORM 加入以显示名称与 ID