我正在Windows上使用dotnet 2.1.4版本。运行dotnet --info命令显示:
.NET Command Line Tools (2.1.4)
Product Information:
Version: 2.1.4
Commit SHA-1 hash: 5e8add2190
Runtime Environment:
OS Name: Windows
OS Version: 10.0.16299
OS Platform: Windows
RID: win10-x64
Base Path: C:\Program Files\dotnet\sdk\2.1.4\
Microsoft .NET Core Shared Framework Host
Version : 2.0.5
Build : 17373eb129b3b05aa18ece963f8795d65ef8ea54
我正在使用dotnet publish来创建一个平台的输出:
dotnet publish ..\src\ChestnutDS.Host\ChestnutDS.Host.csproj
-c Release -o ..\..\published\win-x64
--self-contained -r win-x64 -v n
这让我在一个包含323个文件的文件夹中得到了期望(且有效)的输出。
现在,我想将大部分文件移动到一个子文件夹中,例如 lib。
根据我的了解,在 runtimeconfig.json 中设置 additionalProbingPaths
应该可以实现:
{
"runtimeOptions": {
"additionalProbingPaths": [
"lib"
]
}
}
但它抱怨找不到库:
Error:
An assembly specified in the application dependencies manifest (ChestnutDS.Host.deps.json) was not found:
package: 'Microsoft.AspNetCore.Antiforgery', version: '2.0.1'
path: 'lib/netstandard2.0/Microsoft.AspNetCore.Antiforgery.dll'
尝试将--additionalProbingPath作为命令行参数传递也无法工作,出现相同的错误。尝试创建上述结构并移动文件(lib/netstandard2.0/Microsoft.AspNetCore.Antiforgery.dll),也不起作用。我错过了什么吗?该功能被删除了吗?看起来不是这样,源代码仍包含它。
.deps.json
文件中进行更改,但我还没有找到正确的设置组合来使其工作。 - Michael Stum