我希望添加一个产品版本号出现在我的.jar文件信息。目前,我在Sping Boot 项目中使用Maven进行API Rest。
我读过很多关于manifest版本控制的解决方案。在那里,您必须解压缩并访问META-INF/MANIFEST.MF来检查Implementation-Version。对我想找的东西来说太乏味了。
就像一个. exe。在这里你可以找到它在鼠标右键点击->详细信息->“产品版本”或简单地检查文件版本列所示的图像。Example of a file version description。
另外,我读到JAR文件是一种基于流行的ZIP文件格式的文件格式,用于将许多文件聚合为一个。有点,我想添加一个文件版本到.zip,但我想问无论如何,如果这是可能的。
你好加斯帕
3条答案
按热度按时间iyr7buue1#
JAR文件本身不能有版本。但是你正在使用Maven,这意味着你已经可以访问Maven版本了:
请注意,这在单元测试中通常不起作用(尤其是从IDE运行时),因为这些文件只添加到JAR文件中。
7qhs6swi2#
只需在jar中的任何位置包含一个文本文件。构建各种类型的系统会使这变得微不足道。然后写你的代码,你读出这个文本文件的版本,并显示在屏幕上。
在maven,gradle等中,要在jar中包含纯文本文件,只需将其放入
src/main/resources/version.txt
中,它就会自动包含在内。在java中阅读:
这一点:
.class
文件的相同系统来加载version.txt。sy5wg1nm3#
如果您不需要确切的版本,我见过的一种助记策略是触摸文件时间戳。它可能不适合和/或您必须确定如何处理时间戳范围之外的数字。
例如,使用Powershell设置LastWriteTime(或CreationTime)以匹配v2.3.4 -> 02:03:04
LastWriteTime将显示在Windows资源管理器的“修改日期”列中。