java - Windows 10-使用bash终端将Java和Maven设置为环境和系统变量

标签 java windows bash maven environment-variables

我正在Windows 10上运行的虚拟机上的一个项目上工作,在该项目中我没有用户访问GUI中的系统变量的权限。因为我需要使用Maven,所以我想知道如何在bash终端中设置java和maven变量?

我尝试使用以下命令设置变量:

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

然后在终端中运行mvn --version,我得到:

bash: mvn: command not found



如果我运行了printenv,我会在列表中看到已设置了变量:
M2_HOME=/c/Program Files/apache-maven-3.6.3
M2=/c/Program Files/apache-maven-3.6.3/bin
MAVEN_OPTS=-Xms256m -Xmx512m

但是,如果我关闭终端然后再次打开它,则不会再看到这些变量。
在Windows上通过bash设置Java和Maven环境变量的正确方法是什么?

最佳答案

您需要通过用引号将字符串引起来转义:

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

编辑:
要回答评论中的问题,请注意,您仍然需要将mvn的路径添加到$PATH变量中才能使用它:
export PATH=${PATH}:${M2}

关于java - Windows 10-使用bash终端将Java和Maven设置为环境和系统变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60978062/

相关文章:

java - java 中的大整数乘法(递归)在输入 2000 位数字量级时停止,不会出现错误。为什么?

java - 生成随机数,但必须使用不重复的唯一数字生成

c++ - SYSTEM_PROCESS_INFORMATION结构中的一些成员的含义是什么?

c++ - Windows Shell Extension 不提供确切的文件路径

linux - 查看昨天/今天的日志

macos - 递归地将所有文件移动到一个文件夹,保留最大的文件

java - 在android中将图像转换为铅笔素描

java | Selenium |使用 Stream 从 Web 元素列表中返回单个 Web 元素

c# - DirectoryInfo.GetFiles() 不返回所有文件

bash - Shell 脚本不读取 MacOS 上的 getopts 参数