我是 Sonar 的新手,我试图在我的服务器上安装 Sonar 2.8(HP-UX 上的 Linux 64)
当我尝试启动它(sonar.sh start)时,我收到以下消息
[myHomeDirectory]/sonar/2.8/bin/linux-x86-64/./wrapper: Execute permission denied.
让我发疯的是我已经把整个包放在 777 权限上,所以我真的不明白到底发生了什么。
有人可以帮忙吗?
提前致谢 !
我遇到了类似的问题,因此我来这篇文章。我试图在 Docker 容器中安装 SonarQube 的扫描仪,但是当我运行它时,我得到了以下内容:
/root/sonar-scanner-2.6.1/bin//sonar-scanner: 103: exec: : Permission denied
我已经为整个 /root/ 文件夹授予了所有权限,所以我对被拒绝的权限感到好奇。最后对我来说,这与权限无关。我只需要 RTFM。
Sonar-scanner 需要 JRE 才能运行,而我的 Docker 容器没有安装。因此,如果其他人与我做同样的事情,我希望这可以为您节省几分钟的时间。
不太相信您启动它的方式。为了让 Sonar 运行,我建议在 tomcat 上运行它,前提是您只想使用 Sonar 附带的默认数据库。步骤是:
安装 Tomcat
导航到/war
声纳实例中的目录并运行命令:$] ./build-war.sh
.
完成后,您应该会在同一目录中看到一个 sonar.war 文件。
$] mv sonar.war ROOT.war
这确保了声纳在 tomcat 的默认端口上运行。
将 war 文件移动到 tomcat webapps 目录中:$] mv ROOT.war /tomcathome/webapps
导航到 tomcat/bin
文件夹并运行命令$] ./catalina.sh start
在您的浏览器中输入您的服务器主机名,最后使用端口:8080,您应该会看到声纳正在运行。
不过,这些步骤将使声纳在默认数据库上运行。如果您想要一个 MySQL 数据库,我会查看有关如何执行此操作的声纳教程。
我终于得出结论,二进制文件(包装器)根本没有编译为在 HP-UX 下运行
file
在Linux 下在包装器上启动命令时,我得到:这与在 Itanium 处理器上运行的 HP-UX 所需的<ELF-64 executable object file>
不匹配<ELF-64 executable object file - IA64>
请检查您的机器上是否安装了java。在运行 sonar-runner 之前,应该在机器上安装 Java。
使用它来检查 java:java -version