java编译日期,如c\u日期__

sg24os4d  于 2021-07-05  发布在  Java
关注(0)|答案(3)|浏览(277)

我需要自动将特定格式的编译日期放入一个java源文件,比如c编译器的日期定义,如何定义?

1cklez4t

1cklez4t1#

您可以使用aspectj编译时编织来初始化变量(您显然希望通过将aspect中的日期转换为字符串来完成赋值,然后让代码解析该字符串)。
当然,也没有什么能阻止您在java文件上实际使用c预处理器。

qgzx9mmu

qgzx9mmu2#

标准的java编译器没有办法做到这一点(我认为c编译器也没有——我猜是预处理器给出了日期、文件等)
您必须将日期作为字符串写入源文件中—使用过滤器查看ant的复制任务

<copy file="pre-src/Version.java" toFile="src/Version.java">
  <filterset>
    <filter token="DATE" value="${TODAY}"/>
  </filterset>
</copy>

那么在你的源头

public class Version {
    public static final String date = "@DATE@";
}

今天要将各种格式的日期放入ant属性,请查看tstamp任务。

3gtaxfhh

3gtaxfhh3#

你考虑过注解处理器吗?您可以在使用javac编译之前运行它们,然后在有特定注解的情况下手动将日期添加到文件中。

相关问题