Windows 10 - setting Java and Maven as enviroment and system variables with bash terminal

Viewed 128

I am working on a project on a virtual machine that is running on windows 10, and where I don't have the user access to system variables in GUI. Since, I need to use Maven I am wondering how can I set the java and maven variables with bash terminal?

I have tried to set the variable with this command:

 export M2_HOME="/c/Program Files/apache-maven-3.6.3" 
 export M2="$M2_HOME/bin"
 export MAVEN_OPTS="-Xms256m -Xmx512m"

And then if ran mvn --version in the terminal, I got:

bash: mvn: command not found

If I ran printenv I see in the list that the variables were set:

M2_HOME=/c/Program Files/apache-maven-3.6.3
M2=/c/Program Files/apache-maven-3.6.3/bin
MAVEN_OPTS=-Xms256m -Xmx512m

But, if I close the terminal and open it again, then I don't see these variables again. What is the right way to set up Java and Maven env variables through bash on Windows?

1 Answers

You need to escape the string by surrounding it with quotes:

export M2_HOME="/c/Program Files/apache-maven-3.6.3"

EDIT:
To answer the question in the comments, note that you still need to add mvn's path to the $PATH variable in order to use it:

export PATH=${PATH}:${M2}
Related