Intro to JVM Landscape - raisercostin/software-wiki GitHub Wiki

Java Boundaries

There are different context/scopes in java. Java9 adds module.

References

Advice

  • jdk1-jdk7 too old
  • xxxJdk8 - is LTS(long term support) but depends on vendor
  • OracleJdk8 - no security updates or commercial license
  • AdoptOpenJdk8 - $free (libre and gratis) and LTS
  • xxxJdk9, xxxJdk10 - don't use it, no LTS deprecated by xxxJdk11
  • OracleJdk11 - don't use it, commercial license
  • AdoptOpenJdk11 - $free (libre and gratis) and LTS
  • OpenJdk11 - $free (libre and gratis) and LTS

References

Short Timeline

For a longer version go to wikipedia - https://en.wikipedia.org/wiki/Java_version_history

Binaries

Implementations

Path vs classpath

Classpath vs path/file

Locatii resurse

  • path absolut - /.....
    • nu controlezi mediul
  • path relativ
    • nu controlezi packagingul final: local, multijar classpath, single jar claspath, docker, ....
  • classpath
    • este fix, decis la compile time
  • path absolut definit de environment variables
    • PRO - content can be dynamically changed
    • CONS - must be provided

Resources