GithubHelp home page GithubHelp logo

Comments (6)

Maldivia avatar Maldivia commented on August 19, 2024 9

3rd party JDKs and non-Oracle built OpenJDK distributions set Vendor to the their own name, as they are the vendor (or supplier) of those distributions. OpenJDK has always supported defining the vendor, and now also has a built script setting for it (--with-vendor-name).

As for authoritative text, the Javadoc for System::getProperties is probably the closest:
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/System.html#getProperties()
Which specifies that "java.vendor" is the "Java Runtime Environment vendor" - which in the Corretto case would the Amazon.

In this new Java landscape, where we are likely to see more vendors applying their own set of patches on top of the openjdk source, being able to easily identify which vendor your application is running on can become important.

Some example below for other distributions:

IBM SDK 7.0 SR2 FP10:
    java.vendor = IBM Corporation
    java.vendor.url = http://www.ibm.com/
    java.vm.name = IBM J9 VM
    java.vm.vendor = IBM Corporation
    java.vm.version = 2.7

IBM SDK 8.0 SR4 FP10:
    java.vendor = IBM Corporation
    java.vendor.url = http://www.ibm.com/
    java.vm.name = IBM J9 VM
    java.vm.vendor = IBM Corporation
    java.vm.version = 2.8

Oracle OpenJDK 11.0.1:
    java.vendor = Oracle Corporation
    java.vendor.url = http://java.oracle.com/
    java.vendor.url.bug = http://bugreport.java.com/bugreport/
    java.vendor.version = 18.9
    java.vm.name = OpenJDK 64-Bit Server VM
    java.vm.vendor = Oracle Corporation
    java.vm.version = 11.0.1+13

Oracle JVM 9.0.4:
    java.vendor = Oracle Corporation
    java.vendor.url = http://java.oracle.com/
    java.vendor.url.bug = http://bugreport.java.com/bugreport/
    java.vm.name = Java HotSpot(TM) 64-Bit Server VM
    java.vm.vendor = Oracle Corporation
    java.vm.version = 9.0.4+11

Azul Zulu 11.0.1:
    java.vendor = Azul Systems, Inc.
    java.vendor.url = http://www.azulsystems.com/
    java.vendor.url.bug = http://www.azulsystems.com/support/
    java.vendor.version = Zulu11.2+3
    java.vm.name = OpenJDK 64-Bit Server VM
    java.vm.vendor = Azul Systems, Inc.
    java.vm.version = 11.0.1+13-LTS

Azul Zulu 8.0.192:
    java.vendor = Azul Systems, Inc.
    java.vendor.url = http://www.azulsystems.com/
    java.vendor.url.bug = http://www.azulsystems.com/support/
    java.vm.name = OpenJDK 64-Bit Server VM
    java.vm.vendor = Azul Systems, Inc.
    java.vm.version = 25.192-b01

AdoptOpenJDK 11 with HotSpot:
    java.vendor = AdoptOpenJDK
    java.vendor.url = https://adoptopenjdk.net/
    java.vendor.url.bug = http://bugreport.java.com/bugreport/
    java.vendor.version = AdoptOpenJDK
    java.vm.name = OpenJDK 64-Bit Server VM
    java.vm.vendor = AdoptOpenJDK
    java.vm.version = 11.0.1+13

AdoptOpenJDK 11.0.1 with OpenJ9:
    java.vendor = Eclipse OpenJ9
    java.vendor.url = http://www.eclipse.org/openj9
    java.vendor.version = AdoptOpenJDK
    java.vm.name = Eclipse OpenJ9 VM
    java.vm.vendor = Eclipse OpenJ9
    java.vm.version = openj9-0.11.0

AdoptOpenJDK 8u192 with OpenJ9:
    java.vendor = Eclipse OpenJ9
    java.vendor.url = http://www.eclipse.org/openj9
    java.vm.name = Eclipse OpenJ9 VM
    java.vm.vendor = Eclipse OpenJ9
    java.vm.version = master-61a34f6be

SapMachine 11.0.1:
    java.vendor = SAP SE
    java.vendor.url = https://sapmachine.io
    java.vendor.url.bug = https://github.com/SAP/SapMachine/issues/new
    java.vm.name = OpenJDK 64-Bit Server VM
    java.vm.vendor = SAP SE
    java.vm.version = 11.0.1+13-LTS-sapmachine-0

from corretto-8.

davecurrie avatar davecurrie commented on August 19, 2024 2

Thanks @Maldivia for the detailed response to this. This, along with some additional feedback our team has sought from the OpenJDK community (such as http://mail.openjdk.java.net/pipermail/core-libs-dev/2018-December/057457.html and http://mail.openjdk.java.net/pipermail/core-libs-dev/2018-December/057460.html) prompts us to re-open the issue and work on a plan.

from corretto-8.

davecurrie avatar davecurrie commented on August 19, 2024 2

The latest version of Corretto 8 (8u202 Release Candidate) now has the following:

java.vendor = Amazon.com Inc.
java.vendor.url = https://aws.amazon.com/corretto/
java.vendor.url.bug = https://github.com/corretto/corretto-8/issues/
java.vm.name = OpenJDK 64-Bit Server VM
java.vm.vendor = Amazon.com Inc.
java.vm.version = 25.202-b08

Thanks for the feedback

from corretto-8.

davecurrie avatar davecurrie commented on August 19, 2024

I'm assigning this to Bernd for further investigation. Thanks for the report.

from corretto-8.

bernd-aws avatar bernd-aws commented on August 19, 2024

Thank you for reporting this. We looked into it and could not find a clear definition of what the values for these properties should be, or what constitutes a β€œvendor” in this context, nor is there a standard vendor string applied across different OpenJDK distributions. If you know an authoritative text on this, please point us at it. We will consider changing these values once we have better information on their meaning.

from corretto-8.

aantono avatar aantono commented on August 19, 2024

Would it make sense to include Corretto in the java.vm.name property, to properly indicate the distribution (similar to how IBM and OpenJ9 do it)?
Something like java.vm.name=Corretto OpenJDK 64-Bit Server VM?

from corretto-8.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.