ตั้งแต่ JDK 9 ขึ้นมานั้น จะมี Java Linker มาให้ ซึ่งเป็น command line tool 
ช่วยให้เราสามารถทำการ custom JRE (Java Runtime Environment) 
เหมาะสมกับ application ของเราได้เอง
โดยจะทำงานร่วมกับแนวคิดของ module นั่นเอง

ก่อนอื่นต้องเข้าใจก่อนว่า

ตั้งแต่ Java 8 ขึ้นมานั้น
แนวคิด Module หรือ Project Jigsaw ถูกนำเข้ามาใช้งาน
ทำให้เราสามารถเลือกหรือจัดการ JRE ตามรูปแบบการใช้งานได้
ช่วยทำให้ Software ที่ส่งมอบมีขนาดเล็กลง
ใช้ resource ต่าง ๆ น้อยลง
ทำให้   run ระบบงานได้หลากหลายมากขึ้น

เราสามารถดู module ต่าง ๆ จาก JRE ที่ใช้งานอยู่ในปัจจุบันด้วยคำสั่ง

และใน Java 9 ก็มี command line ชื่อว่า jlink
ช่วยให้เราสามารถ custom JRE ได้ง่ายขึ้น
เพื่อให้เข้าใจง่าย ๆ มาลองกับ Hello World ดีกว่า

ทำการกำหนดให้ code ตัวอย่างอยู่ใน module ชื่อว่า demo.module

ซึ่งถ้าเราใช้ JRE แบบ default นั้นจะพบว่ามีจำนวน module มากมาย
มีขนาดมากกว่า 200 MB ซึ่งเยอะเกินความจำเป็น
เนื่องจาก code ตัวอย่างของเรานั้น
จะใช้เพียง Object, String และ System class เท่านั้น
แถม code น่าจะมีขนาดเพียง 1 KB เท่านั้นเอง
ดังนั้นมา custom JRE ให้เหมาะสมกับระบบงาน Hello World ของเราดีกว่า

ทำการ compile และ run โปรแกรมในรูปแบบของ Module ได้ดังนี้

โดย Hello World นั้นจะใช้งานเพียง base module ของ JRE ที่มีมาให้เท่านั้น
ดังนั้นเราจึงทำการสร้าง JRE ให้เหมาะสมด้วยการใช้งานผ่าน jlink ดังนี้

ผลที่ได้คือ JRE ใหม่ที่เหมาะสมกับระบบงานของเราเท่านั้น
ซึ่งขนาดของ JRE ที่ได้จะมีขนาดเพียง 40 MB เท่านั้น !!
น่าจะเป็นอีกแนวทางหนึ่งในการพัฒนาระบบด้วย Java ให้มีประสิทธิภาพสูงขึ้น

ตัวอย่าง code ทั้งหมดอยู่ที่ GitHub::Demo Custom JRE