jpackage {rJava} | R Documentation |
.jpackage
initializes the Java Virtual Machine (JVM) for an R
package. In addition to starting the JVM it also registers Java
classes and native code contained in the package with the JVM.
function must be called before any rJava functions can be used.
.jpackage(name, jars='*', morePaths='', nativeLibrary=FALSE, lib.loc=NULL)
name |
name of the package. It should correspond to the
|
jars |
Java archives in the |
morePaths |
vector listing any additional entries that should be added to the class path. |
nativeLibrary |
a logical determining whether rJava should look for native code in the R package's shared object or not. |
lib.loc |
a character vector with path names of R libraries, or
|
.jpackage
initializes a Java R package as follows: first the
JVM is initialized via .jinit
(if it is not running
already). Then the java
directory of the package is added to
the class path. Then .jpackage
prepends jars
with the
path to the java
directory of the package and adds them to the
class path (or all .jar
files if '*'
was specified).
Finally the morePaths
parameter (if set) is passed to a call
to .jaddClassPath
.
Therefore the easiest way to create a Java package is to add
.jpackage(pkgname, lib.loc=libname)
in .onLoad
or
.First.lib
, and copy all necessary classes to a JAR file(s)
which is placed in the inst/java/
directory of the source
package.
If a package needs special Java parameters, "java.parameters"
option can be used to set them on initialization. Note, however, that
Java parameters can only be used during JVM initialization and other
package may have intialized JVM already.
The return value is an invisible TRUE if the initialization was successful.
## Not run: .onLoad <- function(libname, pkgname) { .jpackage(pkgname, lib.loc=libname) } ## End(Not run)