how is java / jvm built ? adopt openjdk is your answer !
TRANSCRIPT
![Page 1: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/1.jpg)
Java
![Page 2: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/2.jpg)
●●●●●
![Page 3: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/3.jpg)
●●●●●
![Page 4: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/4.jpg)
●●●●●●
![Page 5: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/5.jpg)
![Page 6: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/6.jpg)
![Page 8: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/8.jpg)
![Page 9: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/9.jpg)
![Page 10: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/10.jpg)
2006 2007 2010 Beyond
Sun launches OpenJDK(javac, Hotspot)
Rest of OpenJDK
is released Oracle adopts OpenJDK(Sun is acquired)
Lambdas, Nashorn & Adopt OpenJDK
OpenJDK:Reference implementation of Java 7 SE
Java 10
Java 9
2011 2012 2014
Java 8
World-wide Community involvement
![Page 11: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/11.jpg)
![Page 12: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/12.jpg)
![Page 13: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/13.jpg)
![Page 14: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/14.jpg)
![Page 15: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/15.jpg)
![Page 16: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/16.jpg)
![Page 17: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/17.jpg)
![Page 18: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/18.jpg)
… JDK6 ⇒ OpenJDK7 → JDK7 JDK7 ⇒ OpenJDK8 → JDK8 JDK8 ⇒ OpenJDK9 → JDK9 …
⇒ applied to→ produces
![Page 19: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/19.jpg)
JDK7 ⇒ OpenJDK8 → JDK8* (1) JDK8* ⇒ OpenJDK8 → JDK8 (2)
⇒ applied to→ produces
![Page 20: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/20.jpg)
make $ make [clean] images$ make bootcycle-images$ make [component-name]$ make [module-name]$ make JOBS=<n> # Run <n> parallel make jobs
![Page 21: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/21.jpg)
![Page 22: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/22.jpg)
![Page 23: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/23.jpg)
![Page 24: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/24.jpg)
GenCollectorPolicy* gc_policy;
if (UseSerialGC) { gc_policy = new MarkSweepPolicy(); } else if (UseConcMarkSweepGC) { #ifndef SERIALGC if (UseAdaptiveSizePolicy) { gc_policy = new ASConcurrentMarkSweepPolicy(); } else { gc_policy = new ConcurrentMarkSweepPolicy(); } #else // SERIALGC fatal("UseConcMarkSweepGC not supported in this VM."); #endif // SERIALGC } else { // default old generation gc_policy = new MarkSweepPolicy(); }
Universe::_collectedHeap = new GenCollectedHeap(gc_policy);
![Page 25: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/25.jpg)
![Page 26: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/26.jpg)
$ git clone <repo-name>
![Page 27: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/27.jpg)
$ git pull origin master
![Page 28: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/28.jpg)
$ mvn clean install
![Page 29: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/29.jpg)
$ hg clone http://hg.openjdk.java.net/jdk8/jdk8 jdk8
$ hg clone http://hg.openjdk.java.net/jdk9/jdk9 jdk9
![Page 30: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/30.jpg)
$ ./get_source.sh
![Page 31: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/31.jpg)
$ bash configure --with-boot-jdk=<path to jdk8 image>
![Page 32: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/32.jpg)
$ make clean images
![Page 33: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/33.jpg)
$ make install
![Page 34: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/34.jpg)
![Page 36: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/36.jpg)
●●●●●
![Page 37: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/37.jpg)
![Page 39: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/39.jpg)
![Page 41: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/41.jpg)
![Page 42: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/42.jpg)
![Page 43: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/43.jpg)
●●●●●●●●
![Page 46: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/46.jpg)
![Page 48: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/48.jpg)
Java
![Page 49: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/49.jpg)
![Page 50: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/50.jpg)
![Page 52: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/52.jpg)
![Page 53: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/53.jpg)
![Page 54: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/54.jpg)
![Page 55: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/55.jpg)
… JDK6 ⇒ OpenJDK7 → JDK7 JDK7 ⇒ OpenJDK8 → JDK8 JDK8 ⇒ OpenJDK9 → JDK9 …
⇒ applied to→ produces
![Page 56: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/56.jpg)
make $ make [clean] images$ make bootcycle-images$ make [component-name]$ make [module-name]$ make JOBS=<n> # Run <n> parallel make jobs
![Page 57: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/57.jpg)
$ git clone <repo-name>
![Page 58: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/58.jpg)
$ git pull origin master
![Page 59: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/59.jpg)
$ mvn clean install
![Page 60: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/60.jpg)
$ hg clone http://hg.openjdk.java.net/jdk8/jdk8 jdk8
$ hg clone http://hg.openjdk.java.net/jdk9/jdk9 jdk9
![Page 61: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/61.jpg)
$ ./get_source.sh
![Page 62: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/62.jpg)
$ bash configure --with-boot-jdk=<path to jdk8 image>
![Page 63: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/63.jpg)
$ make clean images
![Page 64: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/64.jpg)
![Page 65: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/65.jpg)
![Page 67: How is Java / JVM built ? Adopt OpenJDK is your answer !](https://reader034.vdocuments.mx/reader034/viewer/2022042716/55a7a0f51a28ab2b438b47eb/html5/thumbnails/67.jpg)