我正在尝试使用 msbuild 构建 csproj,它会即时存储输出,然后将其移动到配置的输出目录,简单 :)。但是使用 aestrik (*) 传递的值会间歇性地工作,但其他值总是会移动。
所需代码的快照:-
<ItemGroup>
<PublisherRunnables Include="$(ProjectDir)$(OutputPath)WebservicePublisher.exe" />
<PublisherAssamblies Include="$(ProjectDir)$(OutputPath)*.dll" />
<PublisherConfigs Include="$(ProjectDir)$(OutputPath)Configurations.xml" />
<Target Name="ReorganizeFiles" DependsOnTargets="CopyPackageOutput">
<Move SourceFiles="@(PublisherRunnables)" DestinationFolder="c:\Builds\_tmp\" />
<Move SourceFiles="@(PublisherAssamblies)" DestinationFolder="c:\Builds\_tmp\Libs" />
<Move SourceFiles="@(PublisherConfigs)" DestinationFolder="c:\Builds\_tmp\" />
</Target>
输出 - 我第一次构建项目结果 -
WebservicePublisher.exe
Configurations.xml
None of the dll's are moved
我第二次构建项目结果 -
WebservicePublisher.exe
Configurations.xml
All required dll's are moved
注意 - 构建顺序没有问题,如果我指定特定的 dll 而不是 *.dll ,它每次都有效。