Build a jar file for easier access to CRIU from Java
Dependencies: You must have java-devel and criu-devel installed on your system. $JAVA_HOME/include/jni.h must point to a valid jni.h file.
Caveats: You must rm /var/lib/sss/pipes/nss because that prevents criu from working right now. You must run with java -cp .:./checkpoint.jar -XX:+UseSerialGC -XX:-UsePerfData
You must run tests as root. CRIU will run in user mode eventually, but not everywhere yet.
If jigawatts is packed with embedded dynamic library, it is used in advance. If it is missing, the system library is searched for. To change the loading of native bits you can use following properties/variables. Property is used with priority.
-Djigawatts.library.targetfile/$JIGAWATTS_LIBRARY_TARGETFILE
=file-Djigawatts.library/$JIGAWATTS_LIBRARY
=file/SYSTEM
You may use value of SYSTEM
to force search of system library even with internal library present-Djigawatts.verbose.file/$JIGAWATTS_VERBOSE_FILE
=file-Djigawatts.verbose/$JIGAWATTS_VERBOSE
=true/falseThe source directory can be obtained either from a release tarball
or a checkout of the git source code repository. When using the
git repository, it is necessary to install the automake and autoconf
tools and run autogen.sh
to create the configure script.
$ mkdir <build_dir>
$ <src_dir>/configure --prefix=<install prefix>
$ make
$ make install
$ mvn clean install
Is usually enough, but on some systems you need to go with root
$ sudo mvn clean verify