【问题标题】:Does a Java App display the version used?Java 应用程序是否显示使用的版本?
【发布时间】:2011-01-05 18:52:26
【问题描述】:

我可以检查 java 代码并确定它可以在哪个运行时运行吗?例如,我想确保我们环境中的所有应用程序都使用 Sun SE6 和 JDK 1.6。

【问题讨论】:

    标签: java


    【解决方案1】:

    当您在任何类上运行“javap -verbose”时,您将获得主要和次要版本号。以下是major+minor 到实际java jre 版本的映射。

    major  minor Java platform version 
    45       3           1.0
    45       3           1.1
    46       0           1.2
    47       0           1.3
    48       0           1.4
    49       0           1.5
    50       0           1.6
    

    如果您想以编程方式获取课程版本,可以点击此链接: Java API to find out the JDK version a class file is compiled for?

    【讨论】:

      【解决方案2】:

      javap 可能是你想要的:

      javap -verbose MyClass
      

      【讨论】:

      • 所以自动发布过程可以只针对 jar 或 war 运行此命令?
      • 问题是,它看起来是基于类名的,因此您需要获取 .jar 文件中所有类的列表才能查询它们。在 .war 的情况下,您需要从中解压缩 .jar 文件才能执行此操作。确实不太理想,但至少它是受支持的工具。
      • 嗯.. 看起来详细并没有显示代码可以运行的运行时版本。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-21
      • 1970-01-01
      • 1970-01-01
      • 2012-07-20
      • 1970-01-01
      • 2021-04-14
      相关资源
      最近更新 更多