为了账号安全,请及时绑定邮箱和手机立即绑定

如何识别编写代码的java版本?

如何识别编写代码的java版本?

收到一只叮咚 2021-11-17 14:56:41
假设银行应用程序是用 Java EE 开发的。我们现在是开发该应用程序的新人,不确定用于开发该应用程序的 Java EE 版本。我们如何确定开发该项目的 Core Java/Java EE 版本?
查看完整描述

3 回答

?
小怪兽爱吃肉

TA贡献1852条经验 获得超1个赞

检查项目的 java 版本(如果使用 maven 构建)

  1. 转到 pom.xml

  2. 检查属性

  3. 版本

代码看起来像这样

<properties>

    <java.version>11</java.version>

    <start-class>org.la.ecom.portal.teacher.EcommercePortalTeacherApplication</start-class>

</properties>


查看完整回答
反对 回复 2021-11-17
?
白衣非少年

TA贡献1155条经验 获得超0个赞

我们如何确定开发该项目的 Core Java/Java EE 版本?

没有 100% 可靠的方法来做到这一点。

  • 如果项目是使用 Maven 或 Gradle 构建的,则项目声明的依赖项(在构建文件中)将列出 Java EE API 的特定版本,以及(通常)特定的 Java 源和目标版本。

  • Ant 构建文件中可能有类似的线索,但在依赖项的情况下,您将依赖类路径条目的路径名中的线索......可能不存在。

  • 对于 Java EE,使用 XML 文件的命名空间 URL 中可能有线索;例如web.xmlapplication.xml

  • 如果以前的方法没有帮助,那么您可以使用各种 JDK 和针对各种 Java EE API 来测试编译代码库。这应该缩小代码库兼容的版本范围。

  • 如果您有现有.class文件,则javap可以告诉您构建时使用的目标字节码版本。但是,这不是一个可靠的指标,因为它不会告诉您代码库是为哪个 Java 版本开发的。


查看完整回答
反对 回复 2021-11-17
?
MMMHUHU

TA贡献1834条经验 获得超8个赞

如果您想知道使用哪个版本的 Java 来编译类,您可以使用javap, 在 JRE 和 JDK 中可用。它读取您的类字节码并告诉您版本。


javap -v out/com/kineolyan/tzio/diffs/Main.class 给你:


Classfile /mnt/Grishka/Projets/project-tz-io/out/com/kineolyan/tzio/diffs/Main.class

  Last modified 9 oct. 2018; size 1806 bytes

  MD5 checksum 26b264396d74f1a68032bf5cd17aab09

final class com.kineolyan.tzio.diffs.Main

  minor version: 0

  major version: 53

  flags: (0x0030) ACC_FINAL, ACC_SUPER

  ....

请参阅此页面以将主要和次要版本与标准名称相匹配。例如,53.0 是 Java9。


查看完整回答
反对 回复 2021-11-17
  • 3 回答
  • 0 关注
  • 184 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信