Grailsアプリケーションの最上部にバージョンとビルド日付を表示する方法があるかどうかを知りたいと思います。Grails - 私のアプリケーションでバージョンとビルド日時を表示する方法
編集:私は、アプリケーションが作成された日時を探しているはずです。
Grailsアプリケーションの最上部にバージョンとビルド日付を表示する方法があるかどうかを知りたいと思います。Grails - 私のアプリケーションでバージョンとビルド日時を表示する方法
編集:私は、アプリケーションが作成された日時を探しているはずです。
メインテンプレート内、またはどこでも。
<p style="float:right">Server version: <%=ApplicationHolder.application.metadata['app.version']%></p>
環境によって制限する場合は、<g:if env="...">
を使用できます。
ビルド日付はトリッキーで、おそらく何も意味しません。同じ日に2回建てることはありませんか?同じ時間ですか?私は、次のような、ビルドを識別するために、ビルドする前に自分のアプリケーションのバージョンでは、SVNのリビジョンを貼り付けています:代わりに、SVNのリビジョンを追加すると、あなただけのnew Date()
を追加することができ_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();
}
}
注
ビルドを取得します日付。
私はhaventははそれを私の自己を試してみましたが、詳細は
grails set-version 20110101-3
def version = grailsApplication.metadata['app.version']
のようなものは、それがbuildPropertiesを構成することによって行うことができますGrailsの3のための解決策を探してdocumentation
いずれかを参照してくださいありタスク
buildProperties {
inputs.property("info.app.build.date", new Date().format('yyyy-MM-dd HH:mm:ss'))
}
<g:meta name="info.app.build.date"/>
を参照してください。