gpt4 book ai didi

visual-studio-2010 - 尝试使用 ServiceController 时出现错误 MSB4062

转载 作者:行者123 更新时间:2023-12-04 20:00:19 25 4
gpt4 key购买 nike

我在 x64 机器上使用 Visual Studio 2010 和 TFS 2010。

我正在尝试在我的构建中使用 MSBuild 社区任务目标。此目标存在于源代码管理中。因此,在我的 csproj 文件中,我正在导入该特定目标,但现在出现以下错误:

错误 MSB4062:无法从程序集 C:\Program Files (x86)\MSBuild\MSBuildCommunityTasks\MSB 加载“MSBuild.Community.Tasks.Attrib”任务
uild.Community.Tasks.dll。无法加载文件或程序集 'file:///C:\Program F
iles (x86)\MSBuild\MSBuildCommunityTasks\MSBuild.Community.Tasks.dll' 或其中之一
它的依赖关系。该系统找不到指定的文件。确认
声明是正确的,程序集及其所有依赖项
可用,并且该任务包含一个实现 Micros 的公共(public)类
经常.Build.Framework.ITask。 [C:\SampleTest\SampleTest.csproj]

这是我的代码:

   <Import Project="..\..\Builds\Common\MSBuildTasks\MSBuild.Community.Tasks\MSBuild.Community.Tasks.Targets" />
<Target Name="BeforeBuild">
<PropertyGroup>
<MyService>ServiceName</MyService>
</PropertyGroup>
<ServiceController ServiceName="$(MyService)" Action="Stop" />-->
</Target>

对上述有什么想法吗?

当我在项目文件中指定 dll 时,为什么 MSBuild 会尝试在其他地方查找 dll?

提前致谢,

最佳答案

我认为问题出在 MSBuild.Community.Tasks.Targets 内部。文件 - 正是这个文件实际引用了 MSBuild.Community.Tasks.dll部件。

如果你打开文件你会看到一堆 UsingTask元素,例如:

<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Attrib" />
$(MSBuildCommunityTasksLib)属性在文件顶部定义为:
<PropertyGroup>
<MSBuildCommunityTasksPath Condition="'$(MSBuildCommunityTasksPath)' == ''">$(MSBuildExtensionsPath)\MSBuildCommunityTasks</MSBuildCommunityTasksPath>
<MSBuildCommunityTasksLib>$(MSBuildCommunityTasksPath)\MSBuild.Community.Tasks.dll</MSBuildCommunityTasksLib>
</PropertyGroup>

所以看起来你需要设置 $(MSBuildCommunityTasksPath)调用 <Import> 之前的属性(property).

关于visual-studio-2010 - 尝试使用 ServiceController 时出现错误 MSB4062,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14440020/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com