我正在尝试使用MSBuildExtensionPack并读取我必须使用以下内容导入项目:
$(MSBuildProjectDirectory).. \ MSBuild.ExtensionPack.tasks $(MSBuildProjectDirectory).... \ COMMON \ MSBuild.ExtensionPack.tasks
您在使用任务时不必包含上述类型的导入。如果您使用了默认安装路径,只需使用以下导入:
3.5 --- 4.0 ---
我没有在构建服务器上安装扩展包,而是将DLL复制到特定位置并尝试通过以下代码访问它:
使用TeamCity对构建进行分类后,出现以下错误:
错误MSB4019:找不到导入的项目“C:\ Apps \ Teamcity \ buildAgent 1 \ work \ vb82348r312dsd33 \ thirdparty \ tools \ MsBuildExtensions”。确认声明中的路径是否正确,以及该文件是否存在于磁盘上。
如果我查看构建机器,我可以找到该文件夹及其中的所有文件。不知道为什么我收到这个错误。
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"
ToolsVersion="4.0"
DefaultTargets="StopIT">
<Import Project=".\thirdparty\tools\MsBuildExtensions"/>
<Target Name="StopIT">
<MSBuild.ExtensionPack.Computer.WindowsService TaskAction="Stop" ServiceName="AppServices" MachineName="MyMachineName"/>
</Target>
</Project>
请提供您的建议
答案 0 :(得分:1)
您需要从
更改导入<Import Project=".\thirdparty\tools\MsBuildExtensions"/>
到
<Import Project=".\thirdparty\tools\MsBuildExtensions\MSBuild.ExtensionPack.tasks"/>
仅仅命名文件夹是不够的,你必须命名应该导入的每个文件(.proj,.target,.tasks),在你的情况下命名为MSBuild.ExtensionPack.tasks
任务文件包含任务名称和程序集之间的某种映射,以便在其中找到它们。