NuGet 包失败并显示“无法找到 '@(_OutputPathItem->'%(FullPath)...”

2024-04-21

我正在尝试我的第一个 NuGet 包,但遇到了一些麻烦。我有一个相当简单的项目和一个非常简单的 .nuspec 文件:

<?xml version="1.0"?>
<package >
  <metadata>
    <id>$id$</id>
    <version>$version$</version>
    <title>$title$</title>
    <authors>$author$</authors>
    <owners>$author$</owners>
    <description>$description$</description>
  </metadata>
</package>

当我使用此命令行运行 NuGet pack 时:

NuGet.exe pack mylibrary.csproj -Verbosity detailed -Properties Configuration=Debug

我收到此错误:

NuGet.CommandLineException: Unable to find '@(_OutputPathItem->'%(FullPath)mylibrary.dll')'. Make sure the project has been built.
   at NuGet.Commands.ProjectFactory.BuildProject()
   at NuGet.Commands.ProjectFactory.CreateBuilder(String basePath)
   at NuGet.Commands.PackCommand.BuildFromProjectFile(String path)
   at NuGet.Commands.PackCommand.BuildPackage(String path)
   at NuGet.Commands.PackCommand.ExecuteCommand()
   at NuGet.Commands.Command.Execute()
   at NuGet.Program.Main(String[] args)

输出文件肯定位于 bin\Debug 文件夹中,但 NuGet 显然找不到它们。

这显然仅在 .csproj 文件的 ToolsVersion 设置为 3.5 或更低时才会发生。将 ToolsVersion 设置为 4.0 可解决该问题。

看来MSBuild 3.5在调用时返回未展开的属性值_project.GetPropertyValue("TargetPath")(ProjectFactory.cs ~296),其中 MSBuild 4.0 返回扩展的属性值。


我们有同样的问题。添加

-Prop Platform=AnyCPU

命令行使它对我们有用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

NuGet 包失败并显示“无法找到 '@(_OutputPathItem->'%(FullPath)...” 的相关文章

  • 如何在 Visual Studio 扩展 (vsix) 中包含 Nuget 包

    我创建了一个 Visual Studio 扩展 VSIX 它使用 Roslyn 更改我们的应用程序代码 VSIX 解决方案包括 NUGET 包 Microsoft CodeAnalysis Analyzers 顺便说一句 它被描述为版本 1
  • 包恢复失败/.Net Core 安装错误

    安装 Vs 2015 Community 和 DotNetCore 1 0 0 VS2015Tools Preview2 0 1 exe Net Core 后 我尝试创建一个新的 Net Core 应用程序并不断收到 包恢复失败 消息 我正
  • 将 msbuild 任务作为 nuget 传送

    我需要你的帮助 我正在开发一个 msbuild 任务 该任务对 msbuild 执行某些操作 我希望我的用户能够下载并安装 nuget 包 安装包后 构建任务将成为构建过程的一部分 我知道如何发布 nuget 包 并且知道如何将自定义目标文
  • NuGet 包如何包含 app.config 和 web.config 的转换?

    我正在尝试创建一个 nuget 包 它将添加 DLL 并在正确的配置文件中对其进行配置 该包可以在控制台 表单应用程序或 Web 应用程序中使用 因此我想更新适当的配置文件 app config 或 web config nu spec 文
  • 为什么我的 .NET Standard NuGet 包会触发如此多的依赖项?

    我一直在闲逛 NET 标准项目 https github com tdwright contabs和 NuGet 我有一个工作项目并且有已将其上传到 NuGet org https www nuget org packages ConTab
  • 同一解决方案中的 NuGet 引用

    以前可能已经问过这个问题 如果是 请提供链接 我正在为我的公司开发一套 核心 解决方案 我们在此解决方案集中有几个不同的项目 每个项目在构建时都会变成一个 NuGet 包 以便在我们的其他解决方案项目中使用 我发现我想通过 NuGet 引用
  • 无法确定要使用哪个版本的 ASP.NET 网页

    我的 VS2013 项目发生了奇怪的事情 我最近将我的项目分支之一从 NET 4 0 升级到 4 5 1 并使用 NuGet 包管理器安装带有 Razor 的 MVC 5 这样我就可以拥有 WebForms MVC 混合体 到目前为止 它运
  • NuGet 自动包恢复在我的构建服务器上不起作用

    我在这里束手无策 我已经尝试了所有我能找到的方法来让 NuGet 在 TFS 构建服务器上恢复我的包 但似乎没有任何效果 我签入的最新更改是here https stackoverflow com questions 45680811 th
  • NuGet 崩溃 VS2010 Ultimate

    NuGet 包管理器使我的 VS2010 Ultimate 崩溃 有谁之前经历过这个吗 我卸载了扩展并重新安装 当我打开包管理器时 会弹出以下对话框 Microsoft Visual Studio 遇到问题 需要关闭 我正在运行 NuGet
  • NuGet 包失败并显示“无法找到 '@(_OutputPathItem->'%(FullPath)...”

    我正在尝试我的第一个 NuGet 包 但遇到了一些麻烦 我有一个相当简单的项目和一个非常简单的 nuspec 文件
  • 在 NuGet 包中添加解决方案级项目

    我想通过 NuGet 包将解决方案文件夹和解决方案项 不是项目 添加到解决方案文件中 我想这将通过 Powershell 来完成 我浏览了 NuGet Powershell 和 EnvDTE 的文档 但无法弄清楚 我会使用哪些命令 方法 我
  • 私人 NuGet Feed - 记住密码

    每当我在 Visual Studio 中更新 NuGet 包时 系统都会提示我输入有关私有 NuGet 源的用户名和密码 尽管我勾选了方框 记住我的密码 后续 NuGet 更新时系统会提示我输入密码 如何让它正确记住我的密码 这是来自 Vi
  • 如何设置 TeamCity NuGet 安装程序的 MSBuild 版本?

    我正在尝试使用以下命令恢复 NET Core 解决方案的 NuGet 包NuGet 安装程序 https confluence jetbrains com display TCD10 NuGet InstallerTeamCity 构建步骤
  • NuGet 未显示任何包

    I ve tried going to the URL listed for the official package source with my browser and I only get an empty list I also t
  • ASP.NET Core 3:如何在自定义库中引用 3.0.0 程序集?

    我看到引用的应用程序Microsoft AspNetCore App框架 又称为 ASP NET Core 3 0 使用程序集中的类型Microsoft AspNetCore Mvc Abstractions Version 3 0 0 0
  • 从 git 签出后 nuget dll 丢失

    I have a C solution containing different projects On those projects I have some normal nuget packages like Newtonsoft Js
  • xamarin studio 中有包管理器控制台吗

    我正在使用 xamarin studio 带有 nuget 包管理插件 并且在我的项目中有一些 nuget 包 项目上下文菜单中有 管理 和 恢复 nuget 包 但也有控制台吗 Xamarin Studio 和 MonoDevelop 的
  • Visual Studio 2017 Professional-无法在源代码中找到包

    我试图通过 nuget 包管理器 gt 包管理器控制台以及直接从解决方案管理 Nuget 包来添加包 我正在尝试安装Newtonsoft Json从包管理器这样Install Package Newtonsoft Json但无法从源头找到
  • 仅在调试版本中防止 NuGet 恢复包

    我在解决方案中启用了 恢复包 选项 因此当我将代码上传到 CI 服务器时 它会更新正确构建所需的所有包 并且效果很好 现在的问题是 在我的本地计算机上 构建需要很长时间才能启动 因为正在 更新软件包 有没有办法仅在发布版本中启用恢复包 我尝
  • 查看 NuGet 包依赖关系层次结构

    有没有一种方法 文本或图形 来查看 NuGet 包之间的依赖关系层次结构 如果您使用的是新的 csproj 您可以在此处获取所有依赖项 在项目构建后 项目目录 obj project assets json

随机推荐