3 repository-uri
Tools that parse native C headers to automatically produce Java JNI bindings with type conversions.
Distinct from Native Header Generators: Distinct from Native Header Generators: generates Java bindings from C headers, not C++ header files for Rust.
Explore 3 awesome GitHub repositories matching programming languages & runtimes · C Header-to-Java Binding Generators. Refine with filters or upvote what's useful.
SWIG is a tool that generates wrapper code to expose C and C++ libraries to a wide range of higher-level programming languages. It reads annotated C/C++ header files and produces language-specific bindings from a single interface definition, supporting languages such as Python, Java, Ruby, C#, Perl, and many others. The generated wrapper code is free from the project's GPL license, allowing users to distribute it under their own terms. The tool handles modern C++ features including templates, namespaces, smart pointers, and constructs up to C++20 through specialized parsing and code generatio
Produces Java Native Interface wrappers allowing Java applications to invoke C/C++ library routines.
LWJGL is a cross-platform library that provides Java bindings to native APIs for graphics, audio, compute, windowing, and input. It enables Java applications to access low-level hardware-accelerated capabilities such as OpenGL and Vulkan rendering, OpenAL 3D audio, OpenCL GPU compute, and GLFW windowing and input handling. Under the hood, LWJGL dynamically resolves native function pointers at runtime, loads platform-specific shared libraries, and uses generated JNI bindings to bridge Java and native code. It offers explicit memory management through direct buffer access and stack-allocated me
Ships a tool that parses C headers to auto-generate Java native bindings and JNI wrappers.
JavaCPP este o punte JNI C++ și o interfață de funcții străine (FFI) care oferă un generator de binding-uri, un încărcător de biblioteci native și un manager de memorie nativă. Automatizează crearea de wrappere Java în jurul header-elor C++ native și a bibliotecilor partajate pentru a permite interoperabilitatea între cele două limbaje. Proiectul dispune de un generator de binding-uri C++ care parsează fișierele header pentru a produce automat codul glue necesar și interfețele pentru apelarea funcțiilor native. Include un încărcător de biblioteci native care localizează și extrage binarele specifice platformei din classpath într-un cache local pentru execuția la runtime. Sistemul gestionează accesul la memorie nativă de înaltă performanță prin maparea directă a pointerilor și urmărirea resurselor pentru a preveni scurgerile de memorie. Gestionează maparea complexă a tipurilor pentru structurile de date C++ și suportă maparea callback-urilor native pentru a lega pointerii de funcții la metodele Java. Setul de instrumente permite înlocuirea metodelor gestionate cu implementări C++ sau assembly pentru a optimiza timpul de execuție și a reduce overhead-ul resurselor.
Parses C++ header files to automatically generate Java wrapper classes and the corresponding JNI glue code.