Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在java中创建WAR时调用函数_Java_Grails - Fatal编程技术网

在java中创建WAR时调用函数

在java中创建WAR时调用函数,java,grails,Java,Grails,我们想在页面上显示JAVA的WAR(Web Dynamic Project 3.0)创建的时间,我们在Grails中通过调用此函数来实现这一点 /** * Gant script to update buildtimestamp */ eventCreateWarStart = { warName, stagingDir -> def buildDate = new Date() ant.propertyfile(file: "${stagingDir}/WEB-IN

我们想在页面上显示JAVA的WAR(Web Dynamic Project 3.0)创建的时间,我们在Grails中通过调用此函数来实现这一点

/**
 * Gant script to update buildtimestamp
 */
eventCreateWarStart = { warName, stagingDir ->
    def buildDate = new Date()

    ant.propertyfile(file: "${stagingDir}/WEB-INF/classes/application.properties") {
        entry(key:"build.date", value:buildDate)
    }

}
现在,我们想在java中实现同样的事情,WAR事件是在创建该项目的WAR时调用的
如何做到这一点???

这取决于你用什么来构建战争

如果直接使用jar命令,则可能应该创建一个脚本,将日期写入application.properties文件并启动war创建

如果使用ant,可以分两步执行此操作:

  • 创建一个类似这样的类:
  • 包测试;
    导入java.io.FileOutputStream;
    导入java.io.IOException;
    导入java.util.Date;
    导入java.util.Properties;
    公共类GenerateProperties文件{
    公共静态void main(字符串[]args)引发IOException{
    属性=新属性();
    setProperty(“build.date”,new date().toString());
    properties.store(新文件输出流(stagingDir+“/WEB-INF/classes/application.properties”),”;
    }
    }
    
  • 编写一个ant构建文件,如下所示:
  • 
    
    如何在创建war时调用事件,在Grails中,当我们创建war时,此函数是自动调用的。这就是我的问题我已经更详细地更改了我的答案我们正在使用Eclipse开普勒,并从中导出战争,它创建了一场战争