自包含的单个文件不生成单个文件

Jack J Jun 24,616 信誉分 Microsoft 供应商
2024-02-02T02:47:37.27+00:00

我有一个小型的 .Net 5 控制台应用程序,不依赖于第三方组件。
我已将其设置为作为独立的单个文件发布。
但是,发布目录中是 EXE 文件和四个 DLL。如果没有这些 DLL,EXE 文件将无法运行。
DLL 包括: clrcompression.dll
clrjit.dll
coreclr.dll
mscordaccore.dll 为什么Visual Studio 在单文件发布中不理解单?

Note:此问题总结整理于:Self-Contained Single-File does not produce a single file - Microsoft Q&A

.NET
.NET
基于 .NET 软件框架的 Microsoft 技术。
72 个问题
0 个注释 无注释
{count} 票

1 个答案

排序依据: 非常有帮助
  1. Hui Liu-MSFT 48,586 信誉分 Microsoft 供应商
    2024-02-02T06:50:32.2266667+00:00

    您好,您需要使用 IncludeNativeLibrariesForSelfExtract 或 IncludeAllContentForSelfExtract。 在 .Net CLI 中按如下方式使用它:

    dotnet publish -r win-x64 /p:PublishSingleFile=true /p:IncludeNativeLibrariesForSelfExtract=true --self-contained true 
    
    

    要么将其添加到 projectName.csproj 文件中:

    
     <IncludeAllContentForSelfExtract>true</IncludeAllContentForSelfExtract> 
    
    

    这样,发布后将只有一个 exe 文件和一个 pdb 文件。 如果答案是正确的,请点击“接受答案”并点赞。 如果您对此答案还有其他疑问,请点击“评论”。 注意:如果您想接收相关电子邮件,请按照我们的文档中的步骤启用电子邮件通知 此线程的通知。

    0 个注释 无注释

你的答案

问题作者可以将答案标记为“接受的答案”,这有助于用户了解已解决作者问题的答案。