2016-05-13 114 views
0

我已成功設置SonarQube和C#插件。讓Sonarqube掃描儀工作時遇到了麻煩。我想爲MSBuild安裝SonarQube掃描儀

我有以下SonarQube.Analysis.xml

<SonarQubeAnalysisProperties xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.sonarsource.com/msbuild/integration/2015/1"> 

    <Property Name="sonar.host.url">sonar.dnbad.nl</Property> 

    <Property Name="sonar.login">...</Property> 
    <Property Name="sonar.password">....</Property> 

    <Property Name="sonar.verbose">true</Property> 

    <!-- Required only for versions of SonarQube prior to 5.2 --> 
    <!-- 
    <Property Name="sonar.jdbc.url">jdbc:jtds:sqlserver://mySqlServer/sonar;instance=SQLEXPRESS;SelectMethod=Cursor</Property> 
    <Property Name="sonar.jdbc.username">sonar</Property> 
    <Property Name="sonar.jdbc.password">sonar</Property> 
    --> 

</SonarQubeAnalysisProperties> 

當我運行的例子SonarSource-sonar-examples-3e5f679我得到以下的輸出:

SonarQube Scanner for MSBuild 2.0 
Default properties file was found at D:\ServApps\SonarQubeScannerForMSBuild\SonarQube.Analysis.xml 
Loading analysis properties from D:\ServApps\SonarQubeScannerForMSBuild\SonarQube.Analysis.xml 
sonar.verbose=true was specified - setting the log verbosity to 'Debug' 
Pre-processing started. 
Using environment variables to determine the download directory... 
Preparing working directories... 
Removing the existing directory: E:\test\projects\languages\csharp\ConsoleApplication1\.sonarqube 
Creating directory: E:\test\projects\languages\csharp\ConsoleApplication1\.sonarqube 
Creating directory: E:\test\projects\languages\csharp\ConsoleApplication1\.sonarqube\bin 
SonarQube server url: sonar.dnbad.nl 
Checking for updates... 
Downloading SonarQube.MSBuild.Runner.Implementation.zip from sonar.dnbad.nl/static/csharp/SonarQube.MSBuild.Runner.Implementation.zip to E:\test\projects\languages\csharp\ConsoleApplication1\.sonarqube\bin\SonarQube.MSBuild.Runner.Implementation.zip 

Unhandled Exception: System.Net.WebException: Could not find a part of the path 'E:\test\projects\languages\csharp\ConsoleApplication1\sonar.dnbad.nl\static\csharp\SonarQube.MSBuild.Runner.Implementation.zip'. ---> System.Net.WebException: Could not find a part of the path 'E:\test\projects\languages\csharp\ConsoleApplication1\sonar.dnbad.nl\static\csharp\SonarQube.MSBuild.Runner.Implementation.zip'. ---> System.IO.DirectoryNotFoundException: Could not find a part of the path 'E:\test\projects\languages\csharp\ConsoleApplication1\sonar.dnbad.nl\static\csharp\SonarQube.MSBuild.Runner.Implementation.zip'. 
    at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) 
    at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost) 
    at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy) 
    at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, Boolean useAsync) 
    at System.Net.FileWebStream..ctor(FileWebRequest request, String path, FileMode mode, FileAccess access, FileShare sharing, Int32 length, Boolean async) 
    at System.Net.FileWebResponse..ctor(FileWebRequest request, Uri uri, FileAccess access, Boolean asyncHint) 
    --- End of inner exception stack trace --- 
    at System.Net.FileWebResponse..ctor(FileWebRequest request, Uri uri, FileAccess access, Boolean asyncHint) 
    at System.Net.FileWebRequest.GetResponseCallback(Object state) 
    --- End of inner exception stack trace --- 
    at System.Net.WebClient.DownloadFile(Uri address, String fileName) 
    at System.Net.WebClient.DownloadFile(String address, String fileName) 
    at SonarQube.Bootstrapper.BuildAgentUpdater.TryUpdate(String hostUrl, String targetDir, ILogger logger) 
    at SonarQube.Bootstrapper.Program.PreProcess(IBuildAgentUpdater updater, IBootstrapperSettings settings, ILogger logger) 
    at SonarQube.Bootstrapper.Program.Execute(String[] args, IBuildAgentUpdater updater, ILogger logger) 
    at SonarQube.Bootstrapper.Program.Main(String[] args) 

它看起來好像跑步者試圖創建一個路徑,但它包括在路徑中的聲納url,而不是目錄.sonarcube\bin

有什麼建議嗎?

回答

1

你正在傳遞一個主機名而不是URL到sonar.host.url,所以the scheme使用是不明確的。你應該完全定義URL來代替:

<Property Name="sonar.host.url">http://sonar.dnbad.nl</Property>

+0

那麼明顯,但很難找到! –

相關問題