如何使用Albacore的msbuild任务构建.NET Web应用程序项目?

Rob*_*Rob 5 msbuild rake albacore

我有一个Web应用程序项目(WAP)的解决方案,它在Visual Studio中构建和打包.但是,当我运行这个Albacore msbuild任务时,它不起作用.

msbuild :build do |msb| 
  msb.solution = '../../src/Solution.sln'
  msb.targets :clean, :build, :Package
  msb.properties = { 
    :configuration => :Dev
  } 
end
Run Code Online (Sandbox Code Playgroud)

我收到这个错误

目标"包"在项目中不存在.... Solution.sln

如何使用Albacore和rake构建WAP并制作包?

更新:工作任务

msbuild :build do |msb| 
  msb.solution = '../../src/Solution.sln'
  msb.targets :clean, :build
  msb.parameters = '/p:DeployOnBuild=true;DeployTarget=Package'
  msb.properties = { 
    :configuration => :Dev
  } 
end 
Run Code Online (Sandbox Code Playgroud)

Say*_*imi 8

构建解决方案文件时,只能使用以下目标.

  • 建立
  • 重建
  • 清洁
  • 发布

如果您尝试在Web应用程序项目(WAP)上调用Package目标,则可以使用以下语法为该解决方案中的每个WAP调用它.

msbuild YourSolution.sln /p:DeployOnBuild=true;DeployTarget=Package
Run Code Online (Sandbox Code Playgroud)

WAP项目有一个特殊的钩子来在构建期间调用任何目标.这是由DeployOnBuild=trueDeployTarget属性定义调用的属性和目标时启用的.

我不确定Rake的语法是什么,但如果你可以在这里发布给其他理想的语法.