问题描述
我有一个 .csproj 用于 .NetCore 平台的经典参考.我正在为开发环境使用 hintpath
属性.但是我应该在 CI 环境中构建 csproj,其中引用的程序集放置在不同的目录中.在经典的 net4 上,我为 MSBuild 工具使用了 /p:ReferencePath
参数.但是dotnet build"没有类似的论点.作为后备,我找到了dotnet msbuild"命令,但此工具忽略了 /p:ReferencePath=xxx
参数并显示给我
I have a .csproj for the .NetCore platform with classic references. I'm using the hintpath
attribute for the development environment. But I should build csproj on the CI-environment where referenced assemblies are placed in the different directory.On the classic net4 I've used the /p:ReferencePath
argument for the MSBuild tool.But the "dotnet build" has no similar argument.As a fallback I found the "dotnet msbuild" command but this tool is ignores the /p:ReferencePath=xxx
argument and shows me
警告 MSB3245:无法解析此引用.找不到程序集AssemblyName".检查以确保该程序集存在于磁盘上.如果您的代码需要此引用,您可能会遇到编译错误.
请指导我,我可以检查什么,dotnet-build/dotnet-msbuild 工具在哪里搜索引用的程序集以及如何指定该目录?
Please guide me, what can I check, where dotnet-build/dotnet-msbuild tools are searching the referenced assemblies and how to specify that directory?
推荐答案
Microsoft.NET.Sdk.props 提出问题:AssemblySearchPaths 没有 ReferencePath.通过添加到 csproj 修复:
Problem is coused by Microsoft.NET.Sdk.props: AssemblySearchPaths has no ReferencePath.Fixed by adding to csproj:
<PropertyGroup>
<AssemblySearchPaths>
$(AssemblySearchPaths);
$(ReferencePath);
</AssemblySearchPaths>
</PropertyGroup>
这篇关于.NET Core - 构建项目指定 ReferencePath的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!