jvm :: JavaVMBuilder
create_jvm
Usage example:
var builder = new JavaVMBuilder
builder.options.add "-Djava.class.path=."
var jvm = builder.create_jvm
var env = builder.jni_env
jvm :: JavaVMBuilder :: create_jvm
Create a JVM instance, or returnnull
on error
jvm :: JavaVMBuilder :: defaultinit
jvm :: JavaVMBuilder :: version=
Version code of the JVM requested bycreate_jvm
jvm $ JavaVMBuilder :: SELF
Type of this instance, automatically specialized in every classcore :: Object :: class_factory
Implementation used byget_class
to create the specific class.
jvm :: JavaVMBuilder :: create_jvm
Create a JVM instance, or returnnull
on error
core :: Object :: defaultinit
jvm :: JavaVMBuilder :: defaultinit
core :: Object :: is_same_instance
Return true ifself
and other
are the same instance (i.e. same identity).
core :: Object :: is_same_serialized
Isself
the same as other
in a serialization context?
core :: Object :: is_same_type
Return true ifself
and other
have the same dynamic type.
core :: Object :: output_class_name
Display class name on stdout (debug only).jvm :: JavaVMBuilder :: version=
Version code of the JVM requested bycreate_jvm
# 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