【发布时间】:2020-07-26 16:14:18
【问题描述】:
我对 Java 应用程序编程比较陌生。我正在寻找一种将应用程序的构建时间嵌入到应用程序的“关于”对话框中的方法。它不需要花哨或任何特定格式,但确实需要针对每个构建进行更改。对于 C 项目,我会使用 DATE 和 TIME 预处理器宏。
我试过了
private void helpAboutMenuActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
// Trying to launch an About dialog
versionString = versionString.format( "Compiled on %s", compileTime );
System.out.println( "Version Info is: " + versionString );
System.out.println( "this.revision is: " + this.compileTime);
helpAboutDialog.showMessageDialog( helpAboutDialog,
versionString + "\r\n" + this.compileTime, // Message info
"Version Info",
helpAboutDialog.INFORMATION_MESSAGE );
}
compileTime 的定义位置
public class mainWindow extends javax.swing.JFrame {
/**
* Creates new form mainWindow
*/
public final Date compileTime = new Date();
然后我选择“清理并构建”并运行 .jar 文件。显示的时间是我运行 .jar 文件的时间;当我关闭应用程序并在几分钟后运行它时,显示的时间不同。因为我刚刚运行了 .jar 文件,所以我的想法是时间应该是一样的。
我的构建环境是 Netbeans 7.4 和内置的 GUI 构建器(我不知道它的正确名称)。
有什么建议吗?如有必要,我可以尝试构建一个完整的应用程序来显示问题(我的实际源文件有 800 多行并且还在增长——其中大部分与这个问题/问题无关)。
我的下一个想法是尝试在文件系统中找到 .jar 文件并请求文件的最后修改时间。只是为了获得一个版本号需要经历很多事情,但我知道我会在发布后获得支持请求,我真的很想知道到底运行了什么代码。根据我的经验,手动修改的版本号通常会在代码修复/更新期间被遗忘。
【问题讨论】:
-
作为一个新 Java 程序员,您为什么要使用 6.5 年前的 NetBeans 版本在 9 年前的 Java 7 中编写代码?
标签: java netbeans versioning