[英]Build Visual Studio project through the command line
我正在從 Windows Server 2008 安裝運行 ASP.NET 網站,自從我通過 ssh 進入服務器后,我喜歡通過命令行編輯頁面。
我在服務器上安裝了Vim ,以便我可以輕松地編輯文件。 如果我編輯 HTML 和 CSS 以及 .aspx 頁面,則更新成功。 但是如果我想編輯源代碼,我將不得不重建項目。 重建項目可以很好地重新編譯所有內容並更新網絡上的副本。 這是一個開發服務器,所以更新一切都很好,因為沒有人看到這個服務器。
如何通過命令行構建項目以更新源代碼並在服務器上構建?
該項目是用 C# 編寫的,文件都在wwwroot
文件夾中,因此構建后不需要進行文件移動。
創建一個名為:Manual_MSBuild_ReleaseVersion.bat 的 .bat 文件
把它放在 .bat 文件中。
REM you'll have to find the "latest" version of where msbuild.exe resides on your machine.. here are some popular versions/locations
REM set msBuildDir=%WINDIR%\Microsoft.NET\Framework\v2.0.50727
REM set msBuildDir=%WINDIR%\Microsoft.NET\Framework\v3.5
REM set msBuildDir=%WINDIR%\Microsoft.NET\Framework\v4.0.30319
REM set msBuildDir=C:\Program Files (x86)\MSBuild\12.0\Bin
set msBuildDir=C:\Program Files (x86)\MSBuild\14.0\Bin
call "%msBuildDir%\msbuild.exe" MySolution.sln /p:Configuration=Release /l:FileLogger,Microsoft.Build.Engine;logfile=Manual_MSBuild_ReleaseVersion_LOG.log
set msBuildDir=
您可以構建 .sln 文件或 .csproj 文件。 MySolution.sln 或 MyProject.csproj
有關詳細信息,請參閱如何:使用 MSBuild 創建 Web 包。
你可以更進一步:
rd .\BuildResults /S /Q
md .\BuildResults
rd .\MyProject\Bin\Release /S /Q
REM you'll have to find the "latest" version of where msbuild.exe resides on your machine.. here are some popular versions/locations
REM set msBuildDir=%WINDIR%\Microsoft.NET\Framework\v2.0.50727
REM set msBuildDir=%WINDIR%\Microsoft.NET\Framework\v3.5
REM set msBuildDir=%WINDIR%\Microsoft.NET\Framework\v4.0.30319
REM set msBuildDir=C:\Program Files (x86)\MSBuild\12.0\Bin
set msBuildDir=C:\Program Files (x86)\MSBuild\14.0\Bin
call "%msBuildDir%\msbuild.exe" MySolution.sln /p:Configuration=Release /l:FileLogger,Microsoft.Build.Engine;logfile=Manual_MSBuild_ReleaseVersion_LOG.log
set msBuildDir=
XCOPY .\MyProject\Bin\Release\*.* .\BuildResults\
這樣,你刪除一個目錄(只是為了確保你得到一個超級干凈的構建),創建它,構建解決方案/項目,然后將構建的結果復制到新目錄。
每次都超級新鮮。 如果構建失敗,\\BuildResults 目錄是空的。
還有一個微妙的小指標,\\BuildResults 目錄的日期時間是您最后一次構建(或嘗試構建)解決方案/項目的時間。 微妙,但有時很有幫助。
也許用這個命令:
>> devenv myproject.sln /Build "Release|x86"
您可以在“C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\Common7\\IDE\\devenv.exe”路徑中找到 devenv。
我使用了上面@granadaCoder 對答案的修改。
對於 .NET 4.5 及以后的版本,在
%WINDIR%\\Microsoft.NET\\Framework\\
並且將 MSBuild 用於較舊的框架不會讓您編譯較新的構造,例如內插字符串。
為了解決這個問題,你需要安裝最新的MS Build Tools
(目前2015年),並使用MSBuild.exe
在
%programfiles(x86)%\\MSBuild\\14.0\\Bin
安裝 .NET SDK 並使用 MsBuild.exe 命令行工具。 這是 Visual Studio 在生成項目或解決方案時使用的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.