使用 ant 在 jar 文件中查找类文件的 Java 构建版本



是否有一个 ant 任务允许我查看某个 jar 文件并找出 jar 中的类文件是为哪个 Java 版本编译的?

你将不得不写一个。 你可以用现有的任务来做到这一点,但它会很丑陋——这不是蚂蚁真正发光的地方。

你可以解压缩jar,然后要么执行到文件(像Unix一样的机器),你看到这个是版本51(java 7)

$file MyClass.class
MyClass.class; compiled Java class data, version 51.0

或者,如果您使用的是Windows,则可以使用javap -v

$javap -v MyClass.class
Classfile 
MyClass.class
  Last modified Sep 24, 2013; size 7317 bytes
  MD5 checksum 73667731fe2ec6519b1c0c4676a96c70
public class com.foo.MyClass
  minor version: 0
  major version: 51

然后,您必须使用替换正则表达式或一些酱汁来查找主要版本。

你最好写一个小任务,你可以使用 Apache 的字节码工程库来提取版本。

相关内容

  • 没有找到相关文章