diff --git a/swig/CMakeLists.txt b/swig/CMakeLists.txt index 18c6ac3195..cadafba076 100644 --- a/swig/CMakeLists.txt +++ b/swig/CMakeLists.txt @@ -16,11 +16,20 @@ endif() find_package(SWIG REQUIRED) include(${SWIG_USE_FILE}) +option(BUILD_SWIG_JAVA "Build Java JNI wrapper with SWIG" OFF) option(BUILD_SWIG_LUA "Build Lua wrapper with SWIG" OFF) option(BUILD_SWIG_PERL5 "Build Perl5 wrapper with SWIG" OFF) option(BUILD_SWIG_PYTHON "Build Python wrapper with SWIG" OFF) option(BUILD_SWIG_TCL "Build Tcl wrapper with SWIG" OFF) +if(BUILD_SWIG_JAVA) + set_property(SOURCE lammps.i PROPERTY SWIG_MODULE_NAME javalammps) + swig_add_library(javalammps TYPE MODULE LANGUAGE java SOURCES lammps.i) + find_package(JNI REQUIRED) + target_include_directories(javalammps PRIVATE ${JNI_INCLUDE_DIRS}) + swig_link_libraries(javalammps PRIVATE lammps ${JNI_LIBRARIES}) +endif() + if(BUILD_SWIG_PYTHON) set_property(SOURCE lammps.i PROPERTY SWIG_MODULE_NAME pylammps) swig_add_library(pylammps TYPE MODULE LANGUAGE python SOURCES lammps.i) diff --git a/swig/run_java_example.sh b/swig/run_java_example.sh new file mode 100755 index 0000000000..09975049dd --- /dev/null +++ b/swig/run_java_example.sh @@ -0,0 +1,34 @@ +#!/bin/sh + +cat > example.java <