在名稱空空格的文件無法在TC構建我這樣的問題發生:TC與上Git項目
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.5.1:prepare (default-cli) on project test-project: An error occurred during the status check process: Exception while executing SCM command. Error while executing command. Error inside systemOut parser: Illegal character in path at index 0: "java/releases/13.4.1/Prod/SomeFile%2013.1.1.docx" -> [Help 1]
因此,這意味着的東西是空白改變文件的路徑字符之一的空格,即%20。
Whek我們在當地嘗試做行家一樣:
mvn -B release:clean release:prepare release:perform -DreleaseNumber=1.1.0 -DBUILD_VERSION=1.1.0.6 -Dsomeuser | tee ~/3.1.0.6.log
執行良好,一些隨機的開發環境一樣,在TC代理環境正常工作爲好。
另一點:我試過scm:添加這樣的文件,它禁止這樣做,所以我認爲這是它,但mvn準備工作良好,承諾並推回數據。
但是teamcity的構建失敗了一次又一次。我們在TC簽出後檢查了代理上的路徑,它不包含任何%20,而是包含空格。所以檢出它沒有這樣的問題。
我試過一些使用git的實驗,它很好地執行這些文件,我們沒有看到任何問題。
它是什麼以及如何解決它?這可能是SCM的問題嗎?
P.S.我們在TC內部配置中看不到,因爲沒有訪問權限,只能通過網絡界面。
如果我的建議如下不爲你工作,快速修復可能只是刪除文件的空間。作爲一般規則,我會說不要在文件中放置空格。使用camelCase符號或下劃線。 – Japster24
我們已經考慮過更改名稱,但是項目過於龐大,並且有太多的人在那裏提交,還有一些docs,oracle文件,不僅僅是java,所以這可能會再次發生,TC會失敗。如果不是,我們需要另一個解決方案,然後更改名稱和預先接受的鉤子禁止文件名稱中的空格。 – lummycoder