2016-05-13 69 views
0

我用詹金斯發表我的網站,但有一些問題ASP.NET 5 DNU發佈覆蓋

Error: The process cannot access the file 'Microsoft.Extensions.Logging.Debug\1.0.0-rc1-final\lib\net451\Microsoft.Extensions.Logging.Debug.dll' because it is being used by another process. 

它看起來像我的網站正在使用.dll文件,所以我不能覆蓋它。我嘗試通過Visual Studio發佈它的工作。什麼VS做的是VS

Publishing with publish method [FileSystem] 
Publishing files to C:\inetpub\HubbleRebuild 
Executing command ["C:\Program Files (x86)\IIS\Microsoft Web Deploy V3\msdeploy.exe" -source:contentPath='\PublishTemp\Website52\' -dest:contentPath='C:\inetpub\Website' -verb:sync -enableRule:DoNotDeleteRule -retryAttempts:2 -disablerule:BackupRule] 

發佈到臨時文件夾,然後部署到最終的路徑有部署命令首先,我要覆蓋在發佈,但是我覺得這dnu publish should handle --out pointing to an existing directory。現在看起來不支持。所以我認爲我需要按照VS方式發佈,另一個問題是如何在部署時覆蓋以及如何定義我不想覆蓋的文件。

+0

在嘗試發佈之前停止您的應用程序。如果您發佈到IIS,這將在RC2中得到解決。 – Pawel

+0

您是否有關於此修復程序的更多信息? – MichaelMao

+0

我不知道關於FIY的細節,但在RC2發佈之前對你來說無關緊要。 RC2現在專門支持dotnet-cli和dnx(其中包括dnu),因爲ASP.NET Core團隊開始遷移到dotnet-cli,所以它不會收到任何功能更新或修復。問題是,目前還沒有完整的VS 2015 IDE支持dotnet cli。命令行的東西雖然工作。 ASP.NET Core RC2預計將於2016年5月中旬發佈,其預覽工具1和預覽版2預計將於6月底發佈。 – Tseng

回答

0

最後,我在我的Jenkins上使用了兩個命令來發布我的網站,它的效果很好。

1.dnu pulibsh到臨時文件夾

2.deploy這個臨時文件夾到目標站點

"C:\Program Files (x86)\IIS\Microsoft Web Deploy V3\msdeploy.exe" -source:contentPath='\PublishTemp\Website52\' -dest:contentPath='C:\inetpub\Website' -verb:sync -enableRule:DoNotDeleteRule -retryAttempts:2 -disablerule:BackupRule 

但我詹金斯服務器沒有的Microsoft Web部署V3只有微軟Web部署當我使用它失敗的命令時,因爲disablerule:BackupRule我刪除了這部分後就工作了。

日誌文件不覆蓋和新功能更新。