【问题标题】:How to add a custom Property as a child of a PropertyGroup in MSBuild?如何在 MSBuild 中将自定义属性添加为 PropertyGroup 的子项?
【发布时间】:2011-01-06 16:43:00
【问题描述】:

我有以下构建脚本,我使用 MSBuild 运行:

<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Compile" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion ="3.5">
<PropertyGroup>
    <BuildDir Condition=" '$(BuildDir)'==' ' ">$(BaseDir)/build</BuildDir>
    <ProdDir >$(BuildDir)/prod</ProdDir>
    <TestDir>$(BuildDir)/test</TestDir>
    <MMC2SourceDir>SteuerungsZugriffTest/mmc2</MMC2SourceDir>
    <UserSourceDir>SteuerungsZugriffTest/user</UserSourceDir>
    <TestXMLDir>$(BuildDir)/test-results</TestXMLDir>
    <SolutionFile Condition=" '$(SolutionFile)'==' ' ">HMI2.0.sln</SolutionFile>"
    <NUnitTest>nunit-console.exe</NUnitTest>
</PropertyGroup>
<Target Name="Prepare">
    <Message Text="Prepare everything" />
    <MakeDir Directories="$(BuildDir)" />
    <MakeDir Directories="$(ProdDir)" />
</Target>
...

当我现在在命令行上启动脚本时:

D:\MyDir>msbuild /property:BaseDir=D:\MyDir MyScript.build

命令行输出出现以下错误:

D:\MyDir>MyScript.build(11,78): error MSB4067: Das <#text>-Element unterhalb des <PropertyGroup>-Elements ist unbekannt.

这基本上意味着:元素是一个未知的孩子

有人有想法吗?

编辑:对不起,我现在完成了脚本

【问题讨论】:

  • 乍一看似乎没问题 - 错误出现在第 11 行字符 78 处,我认为您没有包括在内。你能发布更多你的脚本吗?

标签: msbuild msbuild-propertygroup


【解决方案1】:

这行末尾多了一个 "

<SolutionFile Condition=" '$(SolutionFile)'==' ' ">HMI2.0.sln</SolutionFile>"

它在标签之外,所以它被认为是一个文本元素......

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-14
    • 2013-03-04
    • 2018-11-27
    • 2012-11-25
    • 2017-11-07
    • 1970-01-01
    • 1970-01-01
    • 2018-02-26
    相关资源
    最近更新 更多