2017-03-06 86 views
0

我想先執行mvn版本:TFS的準備,並得到錯誤:我不能執行MVN發佈:準備

Command line - cmd.exe /X /C "tf status -login:[domain]\[username],null -workspace:workspace -recursive -format:detailed [pathToTheProject]" 
[INFO] err - TF30063: You are not authorized to access [serverName]. 

我懷疑Maven的有問題,確認密碼,或者我把我的developerConnection錯 我SCM:

<scm> 
    <developerConnection>scm:tfs:[domain]\\[username];[password]http[s]://server_name:workspace:$/TeamProject/Path/To/Project</developerConnection> 
    <url>[domain]\\[username];[password]http[s]://server_name:workspace:$/TeamProject/Path/To/Project</url> 
    </scm> 

我在Maven構建標籤:

<build> 
    <plugins> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-compiler-plugin</artifactId> 
     <configuration> 
      <source>1.7</source> 
      <target>1.7</target> 
     </configuration> 
     </plugin> 
     <plugin> 
     <artifactId>maven-scm-plugin</artifactId> 
     <version>1.5</version> 
     <dependencies> 
      <dependency> 
      <groupId>org.apache.maven.scm</groupId> 
      <artifactId>maven-scm-provider-tfs</artifactId> 
      <version>1.9.5</version> 
      <scope>compile</scope> 
      </dependency> 
     </dependencies> 
     </plugin> 
     <plugin> 
     <artifactId>maven-release-plugin</artifactId> 
     <version>2.5.3</version> 
     <dependencies> 
      <dependency> 
      <groupId>org.apache.maven.scm</groupId> 
      <artifactId>maven-scm-provider-tfs</artifactId> 
      <version>1.9.5</version> 
      <scope>compile</scope> 
      </dependency> 
     </dependencies> 
     </plugin> 
    </plugins> 
    </build> 
+0

檢查連接和developerConnection配置是否正確...此外,maven-scm-plugin和maven-scm-providers應該使用相同的版本...檢查調試輸出是否正確接收連接信息。 ..(我已經放棄使用TFS與maven-release-plugin關係;可能是由奇怪的TFS設置引起的)。 – khmarbaise

回答

0

我不能評論你的TFS配置。但是,如果您得到了SCM服務器的認證失敗,那麼你可能缺乏這樣的服務器的條目:

<server> 
    <id>myServer</id> 
    <username>theUserId</username> 
    <password>{encryptedPassword}</password> 
</server> 

這應該由你的構建服務器所使用的settings.xml文件運行Maven的設置建立。 查看documentation關於如何加密您的密碼。

+0

謝謝你的回答。這看起來非常合乎邏輯,我在設置文件中添加了這個標籤,但它沒有幫助,我也有同樣的錯誤。我認爲,maven不認識密碼,因爲你看到用戶名在錯誤信息中有空值。 :( – Spasoje

+0

@Spasoje和''確實與您的服務器名稱匹配嗎? – Ralf

0

嘗試下面的SCM URL

scm:tfs:[[domain\\]username[;password]@]http[s]://server_name[:port][:isCheckinPoliciesEnabled]:workspace:$/TeamProject/Path/To/Project 
0

你會得到拒絕訪問錯誤如果行家無法進行身份驗證。相反,您會得到一個TF30063,它主要與權限問題有關:您是否檢查過使用TFS進行身份驗證的用戶是否擁有對TFS版本控制的讀取權限?

+0

我有權讀寫tfs,當然我正在檢查並多次與此用戶簽出 – Spasoje

+0

您可以看看IIS登錄TFS服務器?或者使用NetMon,Wireshark或Fiddler捕獲流量?這將闡明HTTP交換順序和響應代碼 TFS是否配置爲NTLM,Kerberos或基本身份驗證?Maven是否相應地配置? –