MSBuild未解析导入文件的正确路径

时间:2010-11-07 06:22:09

标签: msbuild msbuild-4.0

我遇到了MSBuild 4.0无法在我导入的某个MSBuild文件中正确解析路径的问题。 ProjectOne.csproj 在文件的最开头导入 GenericProject.proj

GenericProject.proj 然后通过以下结构的调用继续导入 ProjectOne.settings 文件:

<Import Project="$(MSBuildProjectName).settings" />

我曾假设当导入被解决时,它会有类似的路径:

/ Project Root / Src / ProjectOne / ProjectOne.settings

但是当通过MSBuild运行 ProjectOne.csproj 时,我得到了一条路径:

/ Project Root / Targets / ProjectOne.settings

这没有意义,因为考虑所有路径都假定为主项目的相对路径,在本例中为 ProjectOne.csproj

所以我想知道是否有人知道为什么会这样?

文件夹结构:

  • 项目根目录
    • 的Src
      • ProjectOne
        • ProjectOne.csproj
        • ProjectOne.settings
    • 目标
      • GenericProject.proj

我认为这不重要,但万一我正在运行Windows 7 x64

修改: (1:45-11 / 7/2010)我能够通过在{前面添加$(MSBuildProjectDirectory)标记来解决问题{1}}但我仍然不知道为什么它首先没有正确解决。

1 个答案:

答案 0 :(得分:3)

  

所有路径都假定[sic]是主项目的相对

你从哪里得到这个想法?

<Import>个元素与导入文件相关。