--- old/src/java.base/share/classes/java/lang/VersionProps.java.template 2018-11-19 18:30:44.964427600 -0500 +++ new/src/java.base/share/classes/java/lang/VersionProps.java.template 2018-11-19 18:30:44.800426787 -0500 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1999, 2017, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1999, 2018, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -63,6 +63,9 @@ private static final boolean isLTS = "@@VERSION_OPT@@".startsWith("LTS"); + private static final String CLASSFILE_MAJOR_MINOR = + "@@VERSION_CLASSFILE_MAJOR@@.@@VERSION_CLASSFILE_MINOR@@"; + private static final String VENDOR_VERSION_STRING = "@@VENDOR_VERSION_STRING@@"; @@ -70,6 +73,20 @@ (VENDOR_VERSION_STRING.length() > 0 ? " " + VENDOR_VERSION_STRING : ""); + private static final String VENDOR = + "@@VENDOR@@"; + + private static final String VENDOR_URL = + "@@VENDOR_URL@@"; + + private static final String VENDOR_URL_BUG = + "@@VENDOR_URL_BUG@@"; + + /** + * Initialize system properties using build provided values. + * + * @param props Properties instance in which to insert the properties + */ public static void init(Properties props) { props.setProperty("java.version", java_version); props.setProperty("java.version.date", java_version_date); @@ -77,6 +94,22 @@ props.setProperty("java.runtime.name", java_runtime_name); if (VENDOR_VERSION_STRING.length() > 0) props.setProperty("java.vendor.version", VENDOR_VERSION_STRING); + + props.setProperty("java.class.version", CLASSFILE_MAJOR_MINOR); + + props.setProperty("java.specification.version", VERSION_NUMBER); + props.setProperty("java.specification.name", "Java Platform API Specification"); + props.setProperty("java.specification.vendor", "Oracle Corporation"); + + if (!VENDOR.isEmpty()) { + props.setProperty("java.vendor", VENDOR); + } + if (!VENDOR_URL.isEmpty()) { + props.setProperty("java.vendor.url", VENDOR_URL); + } + if (!VENDOR_URL_BUG.isEmpty()) { + props.setProperty("java.vendor.url.bug", VENDOR_URL_BUG); + } } private static int parseVersionNumber(String version, int prevIndex, int index) {