jvm :: JavaVMBuilder :: defaultinit
# Utility to select options to create the VM using `create_jvm`
#
# Usage example:
#
# ~~~~nitish
# var builder = new JavaVMBuilder
# builder.options.add "-Djava.class.path=."
# var jvm = builder.create_jvm
# var env = builder.jni_env
# ~~~~
class JavaVMBuilder
# Version code of the JVM requested by `create_jvm`
#
# Default at 0x00010002 for `JNI_VERSION_1_2`.
var version = 0x00010002 is writable
# Additional option strings
var options = new Array[String]
# Create a JVM instance, or return `null` on error
fun create_jvm: nullable JavaVM
do
var args = new JavaVMInitArgs
args.version = version
args.set_default
args.n_options = options.length
var c_options = new JavaVMOptionArray(options.length)
for o in options.length.times do
var option = options[o]
var c_option = c_options[o]
c_option.string = option
end
args.options = c_options
var jvm = new JavaVM(args)
args.free
c_options.free
if jvm.address_is_null then return null
return jvm
end
end
lib/jvm/jvm.nit:40,1--85,3