【问题标题】:After Installing Microsoft.PowerShell.SDK a "runtimes" folder is added to my project安装 Microsoft.PowerShell.SDK 后,我的项目中添加了一个“运行时”文件夹
【发布时间】:2020-11-13 05:06:35
【问题描述】:

我将Microsoft.PowerShell.SDK NuGet 包添加到我的项目中,这些文件夹出现在其中。

为什么会这样?

【问题讨论】:

  • 我同意thatguy。这些文件来自nuget的contentfiles folder。它的目标是根据作者的需要将一些文件导入到您的主项目中。此外,contentfiles 文件夹仅适用于 PackageReference nuget management format 的新 sdk 项目。
  • 当你引用这些文件时,它们以链接引用的形式存在于你的项目中,而不是在你当前的项目中,也不是在nuget包中。只是以链接的形式。还有a similar issue。

标签: visual-studio nuget visual-studio-2019


【解决方案1】:

NuGet 4.0+ 与 PackageReference 支持 content files。内容文件用于在包中包含诸如文本文件、XML 文件、图像甚至 C# 或 VB 代码之类的工件,这些工件包含在 消费 项目中的预定义构建操作中,可以选择带有特定副本行动。

Microsoft.PowerShell.SDK 包定义了内容文件夹 ref 和 runtimes,其中包含 psd1、ps1xml 文件,这些文件包含在项目中的构建操作 None 中。如果更新,它们将被复制到输出目录。 Visual Studio 用那个蓝色的小链接箭头显示它们,以便您知道它们是被引用的,而不是在您自己的项目中创建的。

您可以在下面看到包的内部结构。包内文件的路径由/contentFiles/{codeLanguage}/{TargetFrameworkMoniker} 给出,其中any 就像一个通配符。

请注意,如果您在使用 packages.config 的旧项目类型中安装 Microsoft.PowerShell.SDK 软件包,您将看不到它们,因为那里不支持内容文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-10-08
    • 2011-02-23
    • 2020-03-19
    • 1970-01-01
    • 2014-05-21
    • 2017-11-14
    • 1970-01-01
    • 2017-12-16
    相关资源
    最近更新 更多