VS Code显示'mvn'不被识别为内部或外部命令

8
我正在尝试使用VS Code创建一个Maven项目,但当我运行命令时,它会显示:
“'mvn'不是内部或外部命令,可操作的程序或批处理文件。”
但是在命令提示符上可以运行“mvn -version”。
用户环境变量为:
“MAVEN_HOME: C:\apache-maven-3.6.1”, “M2_HOME: C:\apache-maven-3.6.1”, “JAVA_HOME: C:\Program Files\Java\jdk1.8.0_212\jre”,
系统变量中的“path”被设置为分别用于maven和java的“C:\apache-maven-3.6.1\bin”,“C:\Program Files\Java\jdk1.8.0_212\bin”。
我正在运行的命令以创建项目是: mvn archetype:generate -DgroupId=com.cs.test-project -DartifactId=test-project -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false 命令参考 而在 VS Code 中则为 命令参考

相同的命令在命令提示符中运行,并成功地在桌面上创建了该项目。


mvn不在Visual Studio Code已知的路径中。 - Thorbjørn Ravn Andersen
2
请问您如何设置? - saitama
你能展示一下系统环境变量的截图吗?如果 mvn -version 命令可以运行,那就意味着你已经设置了 mvn 的路径,这很奇怪。 - Leo Zhu
这个问题解决了吗? - Leo Zhu
以防有人需要,我遇到了类似的问题。我通过简单地重新启动VS Code来解决它。(就像需要启动新的CMD才能识别环境变量更改一样) - gordon613
显示剩余4条评论
5个回答

4

路径指向实际的mvn命令而不是M2_PATH文件夹是有点反直觉的。一旦正确指定,如果您的环境缺少JAVA_HOME中的适当JDK,则会显示新错误。该错误由Maven引发。 Maven插件有点愚蠢,因为它将忽略在settings.json中配置的默认JDK(java.home或/和java.configuration.runtimes属性),并且不会为maven设置Java。您必须专门为maven插件配置它,如下所示:

"maven.executable.path": "c:\\apache-maven-3.8.1\\bin\\mvn",
"maven.terminal.customEnv": [{
        "environmentVariable": "JAVA_HOME",                
        "value": "c:\\openjdk-1.8.0_232-redhat",
}]

当然,这两个路径都应该指向你的环境中正确的文件夹/文件。


4

我通过简单地重新启动VSCode来解决了这个问题,因为我在VSCode运行时设置了我的PATH变量,所以直到重新启动之前,这些更改并没有反映到VSCode集成终端中。


1

2022年10月25日星期二,当我尝试解决同样的问题时,我查看了所有之前针对Windows的解决方案,最终不得不求助于官方安装文档:

安装Apache Maven

解压下载并找到bin目录,将该目录位置手动添加到我的“系统属性>高级>环境变量>Path”中。

为了保险起见,重新启动计算机。


你也需要为Ubuntu做这个,因为Ubuntu 20.0上的软件包非常过时,无法正常工作。 - ChrisoLosoph

0
我解决的方法是在Vs Code设置中将exec路径从CMD改为Powershell。
打开
settings -> features -> terminal

windows exec 的路径从 cmd 更改为您拥有 PowerShell 的位置。

例如:C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe

Windows exec 设置


0

我正在使用Ubuntu 20.0。

在我的情况下,我手动将Maven二进制目录的路径添加到了$PATH变量中。不小心只将其添加到了shell的环境变量中,而没有添加到用户会话中。

同时,请确保您使用的是可以从Maven官方网站下载的官方二进制文件,而不是Ubuntu APT软件包,因为后者太旧并且对我无效。

假设Maven可执行文件已存储在~/apache-maven/bin中。然后,您可以通过在~/.profile中添加export PATH+=":$HOME/apache-maven/bin"来进行编辑。

重新启动计算机,然后当您登录到您的配置文件时,mvn应该能被程序和VSCode看到。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接