eclipse java如何插入构建时间戳

时间:2012-06-26 07:12:26

标签: java build eclipse-plugin

我正在为我的项目使用Eclipse Java。我想向用户显示构建时间。如何让Eclipse(或插件)将构建时间戳插入属性文件?

3 个答案:

答案 0 :(得分:1)

您可以使用 maven ant 。 一个快速谷歌的maven和构建时间戳返回this

Maven也非常适合管理依赖项等,但它需要一些时间才能适应它。 Ant更容易一些,但只是用于构建。

答案 1 :(得分:0)

使用Ant可以将构建时间戳保存到属性文件中。例如:如果你有一个名为project.props的属性文件,在Ant中你可以定义一个目标,它可以在构建期间每次运行:

<target name="buildtime">
    <tstamp>
        <format property="buildtime" pattern="yyyy MMMM dd HH:mm:ss" locale="en"/>
    </tstamp>

    <echo message="Current time and date: ${buildtime}" />
<!-- property name="buildtime" value="${buildtime}"/ -->
    <propertyfile file="project.props">
        <entry key="buildtime" type="date" value="${builltime}"  />
    </propertyfile>
</target>

构建之后,将使用构建时间戳更新属性文件。

答案 2 :(得分:0)

我通过添加一个&#39;构建器来解决这个特殊问题(在Eclipse 3.8.1 debbuild中)。 .. [项目] - &gt;属性 - &gt;建设者 - &gt;新 - &gt;程序

这里我添加了一个指向项目目录中bash脚本的链接,该脚本将属性文件写入我的项目资源/属性文件夹,其中包含major,minor,svn修订版,时间戳等的键=值对。确保脚本生成器在Java Builder之上。

在我的项目中,我在请求时将这些属性读入版本对象。

这种方法没问题,但除非我选择“运行构建器”下的所有选项,否则这种方法很奇怪:&#39;在&#39;构建选项&#39;标签。 Eclipse似乎存储了很多冗余状态,尤其是关于文件系统。使用这些设置,版本会重新生成很多,但这适合我。我有相同的机制为我的项目使用的每个模块生成版本属性。

最大的反感觉是导出jar文件时无法触发此行为。在导出之前有一个选项可以触发清理/构建。

Ps:我有一个独立于Eclipse的并行Ant构建,它使用相同的bash脚本来生成属性文件。从Eclipse内部使用Ant或Maven不适合我。