HTTP/2 301
server: AkamaiGHost
content-length: 0
location: https://openjdk.org/projects/leyden
date: Sat, 19 Jul 2025 10:49:43 GMT
HTTP/2 301
content-type: text/html
location: /projects/leyden/
content-security-policy-report-only: default-src 'self' *.openjdk.java.net feedburner.google.com; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval' feeds.feedburner.com *.statcounter.com statcounter.com; img-src 'self' data: *.statcounter.com *.openjdk.java.net feedburner.google.com; frame-ancestors 'none'; report-uri https://openjdk.report-uri.io/r/default/csp/reportOnly
x-frame-options: SAMEORIGIN
x-xss-protection: 1; mode=block
x-content-type-options: nosniff
x-akamai-transformed: 0 - 0 -
date: Sat, 19 Jul 2025 10:49:44 GMT
set-cookie: _abck=1AA8F7B73779224C71B1C0DB1326976B~-1~YAAQNAHARWpEAh2YAQAAzNlNIg6QM8960ZAJF43vNHmzWF2xCQ8A3btFCoqzMxOzA0hp4dyeZfPgyYMQlGM92jd1MgfLn74j/G2MQ3779Jjc6iqThijyKPlDY3OxxEfXkFUdNWOkIjezsYaOhIuMd6dhM00HMjfk+KX8VcxGg8XlXUkbRoSSC8QKfilQE2d+7w+dk5tHYyxXB6lQ4+ld9wl7+YQgX5Uztko+s93qPDk/XWT7viaq/tnkIm59KQszI3y+UKp5/zLNVgeKV8ftAfzITXKogGjLnk9iq6gzcrNp3CFRqJhMFde3LH0MdlKx1oXMtKSOl528dtsncMo7O/AmtUiGgnnqOKRW8KH+Xbh76FsAqCtD8+6CRYUa9RHy2EawaeXOouhlL6OE9WBVKZGB2/TIPYs8OvFHze8Ia19rIcTRlD0A827DZELUyH+fSnLa+W0=~-1~-1~-1; Domain=.openjdk.org; Path=/; Expires=Sun, 19 Jul 2026 10:49:44 GMT; Max-Age=31536000; Secure
set-cookie: bm_sz=30F9F990FEE6DB6EEC1625723D5C4603~YAAQNAHARWtEAh2YAQAAzNlNIhzYneFTuAlPCeMKcBSqg8gFGdYlfHxInxJ4uv6uRFzws+tiFqzjghCkwnpQbj2br1q/xSZcvjFnC1cx25SNQPEElduz/1oX7j6qcHIdZzL5gHOlV/ghO6AMI84KC1xMeXppiUwBeUpt73sqAnAjnD8SHTaslaM3fK0GGItQYXz1K0Sn+orbAIB46qaeCcqqcKbKBIN3hzZ/lv4FjQqpDMdB1YLGpbk1vLAWi1qPPwW7pGOnlIa/ygRq72yqzuleBA8QhYK1y/Cd7h+84f0feYCTuXzKhJCNIJRi9rJGpW255EySYhFaDvaKLUoKHGphArnFwe9wTjzjhW8gOeULS0HMg9p5dCw=~4277573~3160120; Domain=.openjdk.org; Path=/; Expires=Sat, 19 Jul 2025 14:49:43 GMT; Max-Age=14399
HTTP/2 200
content-type: text/html
last-modified: Mon, 07 Jul 2025 13:05:23 GMT
vary: Accept-Encoding
etag: "686bc613-16d5"
content-security-policy-report-only: default-src 'self' *.openjdk.java.net feedburner.google.com; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval' feeds.feedburner.com *.statcounter.com statcounter.com; img-src 'self' data: *.statcounter.com *.openjdk.java.net feedburner.google.com; frame-ancestors 'none'; report-uri https://openjdk.report-uri.io/r/default/csp/reportOnly
x-frame-options: SAMEORIGIN
x-xss-protection: 1; mode=block
x-content-type-options: nosniff
accept-ranges: bytes
x-akamai-transformed: 0 - 0 -
content-encoding: gzip
date: Sat, 19 Jul 2025 10:49:44 GMT
content-length: 2320
Project Leyden
The primary goal of this Project is to improve the startup time, time to peak performance, and footprint of Java programs.
This Project is sponsored by the HotSpot and Core Libraries Groups.
Development takes place in our OpenJDK GitHub repository, openjdk/leyden . Most of our current work is in the premain branch. From that branch we occasionally publish early-access builds at jdk.java.net/leyden , along with release notes . Please try out the builds and let us know what you think! You can send feedback to the leyden-dev mailing list (subscribe to the list before posting).
Project Leyden’s AOT: Shifting Startup into High Gear
Dan Heidinga, JavaOne 2025 (video )
Project Leyden: Improving Java’s Startup Time
Per Minborg, Sébastien Deleuze, Devoxx BE 2024 (video )
Project Leyden Update
Ioi Lam, Dan Heidinga, JVMLS 2024 (video )
Project Leyden: Capturing Lightning in a Bottle
Per Minborg, Devoxx UK 2024 (video )
Choose Your Own Performance, a Project Leyden Update
Dan Heidinga, DevNexus 2024 (video , slides )
Premain Case Study: Spring PetClinic
Vladimir Ivanov, 2023/9 (slides )
Project Leyden: Capturing Lightning in a Bottle
Mark Reinhold, John Rose, JVMLS 2023 (video , slides )