当解决方案包含框架和核心项目时,Directory.Build.props 不起作用
Posted
技术标签:
【中文标题】当解决方案包含框架和核心项目时,Directory.Build.props 不起作用【英文标题】:Directory.Build.props not working when solution contains Framework and Core projects 【发布时间】:2019-05-29 09:13:42 【问题描述】:我希望解决方案中的所有项目共享相同的版本号。如果我在解决方案的根目录添加一个 Directory.Build.props 文件,它会按预期将该文件复制到每个项目。虽然所有项目都可以正常构建,但我在核心项目上收到“发布”错误。它说:
无法加载 Directory.Build.props。 '',十六进制值 0x1A,是无效字符。第 5 行,位置 11
第 5 行,位置 11 是文件的结尾。
我相信这是文件结束标记。但是,如果我在 Core 项目的根目录中创建相同的 Directory.Build.props 文件,那就没问题了。问题是我创建文件的“位置”。
所有其他项目(框架 4.7.1)都可以使用在解决方案的根目录中创建的 Directory.Build.props 文件正常发布。
我知道我可以更改解决方案的文件夹结构,以便核心项目位于一个文件夹中,而框架项目位于另一个文件夹中。然后为每个“类型”的项目创建一个单独的 Directory.Build.props 文件,但这很麻烦。有解决办法吗?
【问题讨论】:
【参考方案1】:为什么不将版本属性放在一个文件中,例如Version.cs,并使用“添加现有项目...”窗口中的“添加为链接”下拉选项引用该文件?这样你就只有一个文件中的版本
【讨论】:
以上是关于当解决方案包含框架和核心项目时,Directory.Build.props 不起作用的主要内容,如果未能解决你的问题,请参考以下文章
QT包含opencv时-- No such file or directory解决办法