我有以下项目结构:
我使用NAnt来编译libA和libB,使用csc,但我无法在WPF项目中使用csc,因为XAML目标不能用NAnt编译,所以我在NAnt项目中使用了一个MSBuild任务。
问题是,当我启动完整的构建时,libA和libB已经被NAnt编译过了,然后当启动MSBuild任务时,
另一种选择是,不使用项目引用
对我来说,解决方案是能够从MSBuild任务中指定对MsBuild项目的引用。
SLN
libA
libB (references libA)
exeWPF (references libA and libB)
我使用NAnt来编译libA和libB,使用csc,但我无法在WPF项目中使用csc,因为XAML目标不能用NAnt编译,所以我在NAnt项目中使用了一个MSBuild任务。
问题是,当我启动完整的构建时,libA和libB已经被NAnt编译过了,然后当启动MSBuild任务时,
exeWPF
csproj文件引用了libA和libB项目,所以这些库被再次编译了。另一种选择是,不使用项目引用
libA
和libB
,而是在exeWPF
csproj文件中将它们作为dlls引用。问题是,在这种情况下,我失去了代码和导航到引用的功能。对我来说,解决方案是能够从MSBuild任务中指定对MsBuild项目的引用。