我有一个.csproj文件和一个.proj文件。作为我的.proj文件的一部分,我正在生成一个包含在.csproj中的文件,因此.proj需要先运行。
如何做到这一点。我最初尝试添加项目引用如下:
<ProjectReference Include="..\FileGenerator\FileGenerator.proj">
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
然而,这给了我错误:
错误MSB4057:项目中不存在目标“GetNativeManifest”
然后我注意到我的csproj文件中有一个BeforeBuild目标。
我可以使用它来构建其他文件吗?
答案 0 :(得分:2)
使用MSBuild
task来调用其他项目。例如:
<Target Name="BeforeBuild">
<MSBuild Projects="..\FileGenerator\FileGenerator.proj" Targets="Build" />
</Target>
如果您需要作为常见Clean
目标的一部分进行任何清理,您可以像这样插入自定义清理目标:
<Target Name="FileGeneratorClean" BeforeTargets="Clean">
<MSBuild Projects="..\FileGenerator\FileGenerator.proj" Targets="Clean" />
</Target>