Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java IntelliJ中的SonarQube本地脚本找不到mvn(IOException/没有这样的目录)_Java_Maven_Intellij Idea_Sonarqube - Fatal编程技术网

Java IntelliJ中的SonarQube本地脚本找不到mvn(IOException/没有这样的目录)

Java IntelliJ中的SonarQube本地脚本找不到mvn(IOException/没有这样的目录),java,maven,intellij-idea,sonarqube,Java,Maven,Intellij Idea,Sonarqube,我的maven构建在IntelliJ IDEA中运行良好。这不是问题所在。这个问题与SonarQube社区插件有关 ERROR 17:08:38.358 > java.io.IOException: Cannot run program "mvn" (in directory "/Users/chrismanning/Projects/Registry/registry/idea-files"): error=2, No such file or directory 本地分析脚本: mv

我的maven构建在IntelliJ IDEA中运行良好。这不是问题所在。这个问题与SonarQube社区插件有关

ERROR 17:08:38.358 > java.io.IOException: Cannot run program "mvn" (in directory "/Users/chrismanning/Projects/Registry/registry/idea-files"): error=2, No such file or directory
本地分析脚本:

mvn sonar:sonar 
-DskipTests=true 
-Dsonar.analysis.mode=issues
-Dsonar.scm.enabled=false 
-Dsonar.scm-stats.enabled=false 
-Dissueassignplugin.enabled=false 
-Dsonar.preview.excludePlugins=emailnotifications,issueassign 
-Dsonar.report.export.path=sonar-report.json
我肯定已经安装了maven,在我的道路上。它的符号链接在/usr/local/bin中

chrismanning@Chriss-MacBook-Pro:~/Projects/Registry/registry/idea-files$ mvn -version
Apache Maven 3.2.5 (12a6b3acb947671f09b81f49094c53f426d8cea1; 2014-12-14T12:29:23-05:00)
Maven home: /Users/chrismanning/apache-maven-3.2.5
Java version: 1.8.0_40, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "10.10.3", arch: "x86_64", family: "mac"
M2_HOME和PATH是在/etc/launchd.conf中正确定义的

如果你像我一样使用约塞米蒂,你必须这样设置环境变量

在~/Library/LaunchAgents/environment.plist创建新文件

添加此代码块并进行修改以适当设置环境变量

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>Label</key>
  <string>my.startup</string>
  <key>ProgramArguments</key>
  <array>
    <string>sh</string>
    <string>-c</string>
    <string>
    launchctl setenv JAVA_HOME /Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home
    launchctl setenv M2_HOME /Users/chrismanning/apache-maven-3.2.5
    </string>        
  </array>
  <key>RunAtLoad</key>
  <true/>
</dict>
</plist>
保存并重新启动计算机。这是加载约塞米蒂环境变量的正确方法

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>Label</key>
  <string>my.startup</string>
  <key>ProgramArguments</key>
  <array>
    <string>sh</string>
    <string>-c</string>
    <string>
    launchctl setenv JAVA_HOME /Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home
    launchctl setenv M2_HOME /Users/chrismanning/apache-maven-3.2.5
    </string>        
  </array>
  <key>RunAtLoad</key>
  <true/>
</dict>
</plist>
如果您使用的是旧版本的Mac OS X,请参阅此答案


很抱歉,这可能是重复的:遵循解决方案并将我的M2_主声明和路径添加移动到该文件中。然后重新启动IntelliJ No luck在此也尝试按照该答案的指示重新启动电脑,以防万一。还是没有luck@hooknc这实际上就是问题所在,但stackoverflow链接并没有提供正确的解决方案。这种设置环境变量的方法对于MacOSXYosemite来说已经过时了。你自己找到答案做得很好。别忘了选择你的答案作为正确答案。这也适用于终端吗?或者,我必须添加export JAVA_HOME=/Library/JAVA/。。。在一些其他地方,例如,/etc/profile或~/.bash\u profile?在终端中应该可以正常工作。只需确保在添加启动代理文件后重新启动计算机。然而,如果你在运行El Capitan,我认为设置变量的方法会改变。我还没有升级我的Mac电脑,但一位同事在El Capitan上遇到了问题。请务必使用pastebin代码片段中的原始粘贴数据,格式化的版本已经损坏。啊,我会让他试试的。谢谢你,佩里。