Variables

The devonfw-ide defines a set of standard variables to your environment for configuration via variables[.bat] files. These environment variables are described by the following table. Those variables printed bold are also exported in your shell (except for windows CMD that does not have such concept). Variables with the value - are not set by default but may be set via configuration to override defaults. Please note that we are trying to minimize any potential side-effect from devonfw-ide to the outside world by reducing the number of variables and only exporting those that are required.

Table 1. Variables of devonfw-ide
Variable Value Meaning

DEVON_IDE_HOME

e.g. /projects/my-project

The top level directory of your devonfw-ide structure.

PATH

$PATH:$DEVON_IDE_HOME/software/java:…​

You system path is adjusted by devon command.

DEVON_HOME_DIR

~

The platform independent home directory of the current user. In some edge-cases (e.g. in cygwin) this differs from ~ to ensure a central home directory for the user on a single machine in any context or environment.

DEVON_IDE_TOOLS

(java mvn node npm)

List of tools that should be installed and upgraded by default for your current IDE.

DEVON_IDE_CUSTOM_TOOLS

-

List of custom tools that should be installed additionally. See software for further details.

DEVON_CREATE_START_SCRIPTS

(eclipse vscode)

List of IDEs that shall be used by developers in the project and therefore start-scripts are created on setup.

DEVON_OLD_PATH

…​

A "backup" of PATH before it was extended by devon to allow recovering it. Internal variable that should never be set or tweaked.

WORKSPACE

main

The workspace you are currently in. Defaults to main if you are not inside a workspace. Never touch this variable in any variables file.

WORKSPACE_PATH

$DEVON_IDE_HOME/workspaces/$WORKSPACE

Absolute path to current workspace. Never touch this variable in any variables file.

JAVA_HOME

$DEVON_IDE_HOME/software/java

Path to JDK

SETTINGS_PATH

$DEVON_IDE_HOME/settings

Path to your settings. To keep oasp4j-ide legacy behaviour set this to $DEVON_IDE_HOME/workspaces/main/development/settings.

M2_REPO

$DEVON_IDE_HOME/conf/.m2/repository

Path to your local maven repository. For projects without high security demands, you may change this to the maven default ~/.m2/repository and share your repository among multiple projects.

MAVEN_HOME

$DEVON_IDE_HOME/software/maven

Path to Maven

MAVEN_OPTS

-Xmx512m -Duser.home=$DEVON_IDE_HOME/conf

Maven options

DOCKER_EDITION

e.g. DOCKERDESKTOP

If set as DOCKERDESKTOP the command devon docker setup will setup Docker Desktop globally at the users computer. Otherwise the setup of Rancher Desktop will be started.

GRAALVM_HOME

$DEVON_IDE_HOME/software/extra/graalvm

Path to GraalVM

DEVON_SOFTWARE_REPOSITORY

-

Project specific or custom software-repository.

DEVON_SOFTWARE_PATH

-

Globally shared user-specific local software installation location.

ECLIPSE_VMARGS

-Xms128M -Xmx768M -XX:MaxPermSize=256M

JVM options for Eclipse

deprecated: ECLIPSE_PLUGINS

-

Array with "feature groups" and "update site URLs" to customize required eclipse plugins. Deprecated - see Eclipse plugins.

«TOOL»_VERSION

-

The version of the tool «TOOL» to install and use (e.g. ECLIPSE_VERSION or MAVEN_VERSION).

EXTRA_JAVA_VERSION

-

An additional (newer) version of java that will be used to run java-based IDEs (e.g. eclipse or intellij).

«TOOL»_BUILD_OPTS

e.g.clean install

The arguments provided to the build-tool «TOOL» in order to run a build.

«TOOL»_RELEASE_OPTS

e.g.clean deploy -Dchangelist= -Pdeploy

The arguments provided to the build-tool «TOOL» in order to perform a release build.

DEVON_IDE_TRACE

If value is not an empty string, the devonfw-ide scripts will trace each script line executed. For bash two lines output: before and again after expansion. ATTENTION: This is not a regular variable working via devon.properties. Instead manually do export DEVON_IDE_TRACE=true in bash or set DEVON_IDE_TRACE=true in windows CMD before running a devon command to get a trace log that you can provide to experts in order to trace down a bug and see what went wrong.

Last updated 2023-11-20 10:37:01 UTC