我有一個在Azure上託管的應用服務。如何在微軟Azure上安裝maven(應用服務)
我們服務的代碼位於bitbucket上,它是一個基於maven的Java項目。開發人員部署WAR文件的過程是在本地構建它們並將其FTP到Azure,這顯然不被推薦。
比方說,我沒有自由和資源舉辦像詹金斯一個CI工具,我想做到以下幾點:
同步的代碼bitbucket.org通過使用'到Azure部署選項「在Azure中。每次我執行git push時,Azure都會自動從指定分支中獲取代碼並複製/更新/刪除修改的文件(並默認將它們置於wwwroot下)
我想修改deployment.cmd文件在Azure中,以便我可以在#1後添加自定義步驟。
我在哪裏卡住了?
- 我已經在
D:\home\maven
文件夾下的FTP的maven和解壓maven。我通過使用XDT文件(附件)設置了正確的環境變量。然而,當我做MVN -version,我得到以下錯誤:
java.lang.NoClassDefFoundError: org/apache/maven/exception/ExceptionHandler
.. .. caused by ClassNotFound ..
我沒有完整跟蹤得心應手。這個類是在lib文件夾(我已驗證)下的maven-core中。
難道是因爲權限?雲對我來說是陰天o_O
- 當我得到這個工作後,我需要添加自定義步驟到deployment.cmd。是否有我需要使用的特定語言或Windows命令?對於ENV變量
XDT文件內容(JAVA_HOME
已設置)
<?xml version="1.0"?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document- Transform">
<system.webServer>
<runtime xdt:Transform="InsertIfMissing">
<environmentVariables xdt:Transform="InsertIfMissing">
<add name="M2_HOME" value="D:\home\maven\apache-maven-3.3.9" xdt:Locator="Match(name)" xdt:Transform="InsertIfMissing" />
<add name="MAVEN_HOME" value="D:\home\maven\apache-maven-3.3.9" xdt:Locator="Match(name)" xdt:Transform="InsertIfMissing" />
<add name="Path" value="%Path%%JAVA_HOME%\bin;%M2_HOME%\bin;" xdt:Locator="Match(name)" xdt:Transform="InsertIfMissing" />
</environmentVariables>
</runtime>
</system.webServer>