gpt4 book ai didi

visual-studio - 从 Visual Studio 构建 NuGet 包

转载 作者:行者123 更新时间:2023-12-03 16:07:43 26 4
gpt4 key购买 nike

我正在尝试通过 NuGet 包和私有(private)源共享内部公司程序集。此程序集面向 .NET Framework 4.6.1。我希望这些 NuGet 包在发布构建期间从 Visual Studio 自动打包。我知道我可以添加 <GeneratePackageOnBuild>true</GeneratePackageOnBuild>到.csproj。我不确定这是否是特定于 .NET Standard 的属性,但它似乎部分有效。但是,当我构建时,我得到

error MSB4044: The "GetPackOutputItemsTask" task was not given a value for the required parameter "PackageOutputPath".

我一直在尝试学习如何从 Visual Studio 中传递此参数,但我没有看到很多关于参数的文档,除非从命令行手动调用它。在 Visual Studio 中是否有一种简单的方法可以做到这一点?我要解决这个问题了吗?

编辑:这是使用 .NET Framework 类库。我可以从命令行运行 pack 命令,并使用 /p:PackageOutputPath="path\here" 为其提供所需的参数。 .这似乎是为 .NET Core 和 Standard 项目设计的,Visual Studio 可能无法处理打包 .NET Framework 项目。

最佳答案

中启用构建打包“非 SDK”项目,使用旧的 .NET 框架 (例如:4.5.1)和visual studio 2019 没有 使用自定义 Target .您需要执行以下步骤:

  • 添加第一个PropertyGroup标记 csproj
  • 添加最少的标签 AuthorsPackageOutputPath
  • 检查相同的PropertyGroupGeneratePackageOnBuild

  • 现在变量将被传递给内部触发的 msbuild -t:Pack命令。

    这是一个工作配置示例,请确保这是第一个 <PropertyGroup> .csproj :

      <PropertyGroup>
    <Title>packageid</Title>
    <Description>your description</Description>
    <Version>1.1.1</Version>
    <ReleaseNotes>New package system</ReleaseNotes>
    <Authors>authors</Authors>
    <Owners>owners</Owners>
    <Copyright>your copyrights</Copyright>
    <PackageOutputPath>bin\Package</PackageOutputPath>
    <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
    </PropertyGroup>

    如果您正在寻找引用资料,请点击此处:
  • how to create a nuget package with msbuild
  • all possible tags to set on the csproj on the first PropertyGroup
  • 关于visual-studio - 从 Visual Studio 构建 NuGet 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58630528/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com