Install specified Java version and set the JAVA_HOME
and PATH
environment variables in current R session
Source: R/use_java.R
use_java.Rd
Using specified Java version, set the JAVA_HOME
and PATH
environment variables in the current R session. If Java distribtuion has not been downloaded yet, download it. If it was not installed into cache directory yet, install it there and then set the environment variables. This is intended as a quick and easy way to use different Java versions in R scripts that are in the same project, but require different Java versions. For example, one could use this in scripts that are called by targets
package or callr
package.
Usage
use_java(
version = NULL,
distribution = "Corretto",
cache_path = getOption("rJavaEnv.cache_path"),
platform = platform_detect()$os,
arch = platform_detect()$arch,
quiet = TRUE
)
Arguments
- version
Integer
orcharacter
vector of length 1 for major version of Java to download or install. If not specified, defaults to the latest LTS version. Can be "8", "11", "17", "21", "22", or 8, 11, 17, 21, or 22.- distribution
The Java distribution to download. If not specified, defaults to "Amazon Corretto". Currently only "Amazon Corretto" is supported.
- cache_path
The destination directory to download the Java distribution to. Defaults to a user-specific data directory.
- platform
The platform for which to download the Java distribution. Defaults to the current platform.
- arch
The architecture for which to download the Java distribution. Defaults to the current architecture.
- quiet
A
logical
value indicating whether to suppress messages. Can beTRUE
orFALSE
.
Examples
if (FALSE) { # \dontrun{
# set cache directory for Java to be in temporary directory
options(rJavaEnv.cache_path = tempdir())
# install and set Java 8 in current R session
use_java(8)
# check Java version
"8" == java_check_version_cmd(quiet = TRUE)
"8" == java_check_version_rjava(quiet = TRUE)
# install and set Java 17 in current R session
use_java(17)
# check Java version
"17" == java_check_version_cmd(quiet = TRUE)
"17" == java_check_version_rjava(quiet = TRUE)
} # }