有沒有辦法使用MSBuild擴展包與「本地」引用,不需要您運行安裝程序?換句話說,您是否可以將目標存儲在解決方案項目文件夾中,以便每位開發人員不必安裝它?是否可以在不安裝的情況下使用MSBuild Extension Pack?
回答
您必須在任務的導入統計之前聲明屬性ExtensionTasksPath。例如看一看:
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ExtensionTasksPath Condition="'$(ExtensionTasksPath)' == ''">E:\Data\Development\My Code\Community\MSBuild\ExtensionPack\</ExtensionTasksPath>
</PropertyGroup>
<Import Project="$(ExtensionTasksPath)MSBuild.ExtensionPack.tasks"/>
<Target Name="Demo">
<MSBuild.ExtensionPack.FileSystem.File TaskAction="GetTempFileName">
<Output TaskParameter="Path" PropertyName="TempPath"/>
</MSBuild.ExtensionPack.FileSystem.File>
<Message Text="TempPath: $(TempPath)" />
</Target>
</Project>
該社區的MSBuild任務相似,但屬性名爲MSBuildCommunityTasksLib。我認爲SDC任務叫做TasksPath。
謝謝!我剛剛在MSBuild上觀看了你的DNRtv劇集,他們非常棒。 – Bob 2009-11-22 15:10:46
我很難得到這個工作相對路徑(即不是C:\等等,但.. \等等)。
這是因爲如果它是相對的,則無法重新使用ExtensionTasksPath變量,因爲您的文件(.csproj)和MsBuild.ExtensionPack.tasks文件位於不同位置,從而導致相對於其他值的不同值路徑。
這到底是什麼得到了它的工作,我(把你的.csproj文件的頂部):
<PropertyGroup>
<ExtensionTasksPath Condition="'$(ExtensionTasksPath)' == ''">..\4.0\</ExtensionTasksPath>
</PropertyGroup>
<Import Project="..\references\ExtensionPack\4.0\MSBuild.ExtensionPack.tasks"/>
爲什麼需要「.. \ 4.0 \」,而不僅僅是原因「 「(空白)是因爲MsBuild.ExtensionPack.tasks文件檢測到空白並且做了一些不同的事情(如果是這種情況)。如果我想稍後升級,我不想破解MsBuild.ExtensionPack.tasks文件。
這對我有效。謝謝! – 2014-08-21 21:05:54
- 1. Perl:是否可以在不安裝Mysql的情況下安裝Mysql模塊?
- 2. 是否可以在不安裝mysql5包的情況下安裝py26-mysql?
- 3. 在不安裝的情況下使用msbuild社區任務
- 4. 是否可以在不安裝Selenium Server的情況下使用ISelenium/DefaultSelenium?
- 5. 是否可以在不安裝的情況下使用'Microsoft.ACE.OLEDB.12.0'提供程序?
- 6. 是否可以在沒有梨的情況下安裝PHPUnit?
- 7. 我可以在不使用Composer的情況下安裝Laravel嗎?
- 8. 我可以在不安裝的情況下使用git嗎?
- 9. 是否可以在不使用Rails的情況下使用FactoryGirl?
- 10. 是否可以在不安裝APK的情況下加載課程?
- 11. 是否可以在不拖放的情況下使用Linq-SQL?
- 12. 是否可以在沒有自動安裝的情況下下載Ruby gem?
- 13. 是否可以在不使用包裝的情況下創建此樣式?
- 14. MSI安裝程序是否可以安裝文件並在不留下足跡的情況下終止?
- 15. 是否可以在不禁用JavaScript的情況下禁用AJAX?
- 16. 是否可以在沒有IOS SDK的情況下安裝xcode macOS sdk?
- 17. 是否可以在沒有python的情況下爲node.js安裝sharp?
- 18. 是否可以在沒有iTunes的情況下安裝配置文件?
- 19. 是否可以在沒有FOSUserBundle的情況下使用FOSCommentBundle?
- 20. 是否可以在沒有log4j的情況下使用perf4j?
- 21. 是否可以在沒有jQuery的情況下使用Materializecss?
- 22. 是否可以在沒有GMS的情況下使用Google API?
- 23. 是否可以在沒有IIS的情況下使用Silverlight RiaServices?
- 24. 在沒有安裝VS的情況下運行msbuild
- 25. 在沒有Visual Studio 2010的情況下安裝MSBuild 4.0
- 26. 我可以在不使用joomla後端的情況下安裝Joomla擴展嗎
- 27. 我可以在不安裝Visual Studio的情況下使用mstest.exe嗎?
- 28. 是否可以在不使用整個框架的情況下爲PHP中的ORM安裝Kohana庫?
- 29. 是否可以在不使用PXE的情況下自動(非交互式)安裝RHEV(RedHat Enterprise Vertualization)
- 30. 是否可以在不使用RefreshToken的情況下使用Google Adwords API?
這種「安裝」的名稱稱爲「xcopy部署」 – 2009-11-21 22:18:56
我最後的評論在語法上有點差。對不起,我很困... – 2009-11-21 22:19:32
我不關注。我想知道是否可以在機器上的任何位置引用MSBuild擴展,而無需運行msi來安裝擴展。 – Bob 2009-11-21 22:20:24