使用Web Deployment Project时MSBuild在执行构建时使用文件夹“.TempBuildDir”。是否可以指定一个替代文件夹?Web部署项目/ MSBuild - TempBuildDir
1
A
回答
4
在C:\ Program Files \ MSBuild \ Microsoft \ WebDeployment \ v9.0或v10.0目录中是Microsoft.WebDeployment.targets文件,其中TempBuildDir属性在_PrepareForBuild目标中定义。
由于他们使用CreateProperty任务来设置TempBuildDir,它始终设置为硬编码值,即使该属性已存在。这可能是为了消除某人使用TempBuildDir属性进行其他操作并搞乱构建的问题。
您将不得不将Microsoft.WebDeployment.targets文件更改为使用不同的临时目录。
警告:以下内容正在更改您无权控制的文件,因此使用是您自己的风险。
如果你要在_PrepareForBuild目标以下行从
<CreateProperty Value=".\TempBuildDir\">
<Output TaskParameter="Value" PropertyName="TempBuildDir" />
</CreateProperty>
改变
<CreateProperty Value="$(MySpecialWebTempBuildDir)" Condition=" '$(MySpecialWebTempBuildDir)' != '' ">
<Output TaskParameter="Value" PropertyName="TempBuildDir" />
</CreateProperty>
<CreateProperty Value=".\TempBuildDir\" Condition=" '$(MySpecialWebTempBuildDir)' == '' ">
<Output TaskParameter="Value" PropertyName="TempBuildDir" />
</CreateProperty>
然后设置MySpecialWebTempBuildDir属性项目中的文件,它应该覆盖它。如果您没有设置MySpecialWebTempBuildDir,那么它将像以前一样使用TempBuildDir。
如果安装Web部署包的更新,您的更改将被覆盖。
1
另一种方案是取消注释和覆盖网络部署项目的“BeforeBuild”的目标如下:
<Target Name="BeforeBuild">
<CreateProperty Value=".\TempBuildDirDebug\" Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<Output TaskParameter="Value" PropertyName="TempBuildDir" />
</CreateProperty>
<CreateProperty Value=".\TempBuildDirRelease\" Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<Output TaskParameter="Value" PropertyName="TempBuildDir" />
</CreateProperty>
相关问题
- 1. MSBuild:如何为Web部署项目(VS2010)构建Web部署包?
- 2. Web部署项目&TeamCity
- 3. MsBuild Web部署ERROR_FILE_IN_USE
- 4. Web部署项目失败构建(Visual Studio 2008)
- 5. MSBuild和Web部署项目外部依赖关系
- 6. VS2005 Web部署项目VS2008 - ASPNET编译器错误
- 7. 使用msbuild部署BizTalk 2009项目
- 8. TFS MsBuild和Web部署项目随机失败
- 9. 错误时通过的TeamCity用的MSBuild部署Web项目(msdeploypublish)
- 10. MSBUILD web部署包不包含项目引用DLL的
- 11. ASP.NET Web部署项目是否存活?
- 12. TeamBuild和Web部署项目
- 13. Intellij IDEA Web项目部署
- 14. 发布Web项目的MSBuild
- 15. Web部署项目的工具和Web应用程序项目
- 16. 的MSBuild包任务 - Web部署
- 17. Jenkins-MSBuild Web部署创建zip而不是部署
- 18. 部署Android的Spring项目Web服务
- 19. 两个Web项目,一个部署
- 20. OpenShift部署java配置的web项目
- 21. 使用Tomcat部署Dynamic Web项目
- 22. 部署netbeans Java EE web项目
- 23. Web部署项目AfterBuild路径问题
- 24. Visual Studio TFS不会部署web项目
- 25. 使用Web引用部署项目
- 26. 在Liferay Portlet内部署Web项目
- 27. 澄清web部署项目设置
- 28. Visual Studio 2012和Web部署项目(wdproj)
- 29. Web部署项目的问题?
- 30. TFS2010与多个项目的web部署