Skip to content

openjdk/panama-foreign

Folders and files

NameName
Last commit message
Last commit date

Latest commit

6da296b · Mar 28, 2025
Feb 26, 2025
Feb 14, 2025
Jan 27, 2025
Mar 7, 2025
Mar 28, 2025
Mar 28, 2025
Mar 28, 2025
Aug 18, 2023
Feb 28, 2025
Dec 14, 2017
Oct 12, 2022
Aug 10, 2023
May 30, 2016
Feb 11, 2025
Oct 21, 2022
Sep 25, 2024
Nov 27, 2023

Repository files navigation

Welcome to the JDK!

For build instructions please see the online documentation, or either of these files:

See https://openjdk.org/ for more information about the OpenJDK Community and the JDK and see https://bugs.openjdk.org for JDK issue tracking.


Foreign Function & Memory API

This repository contains changes which aim at improving the interoperability between the Java programming language and native libraries, which is one of the main goals of Project Panama. This is done by introducing a new Java API, the Foreign Function & Memory API, which can be used to:

  • interact with different kinds of memory resources, including so-called off-heap or native memory, as shown here;
  • find native functions in a .dll/.so/.dylib and invoke them using method handles, as shown here.

This API has been delivered, as incubating/preview APIs, in official JDK releases, see JEP 412, JEP 419 and JEP 424 for more details.

The Foreign Function & Memory API is best used in combination with a tool called jextract, which can be used to generate Java bindings to access functions and/or structs in a native library described by a given header file. The tool is available in a standalone repository which contains several examples which should help you getting started.

Early acccess (EA) binary snapshots of this repository can be found at: http://jdk.java.net/panama/