标签: nuget-package-restore

还原 NuGet 包时出错:“还原输入无效。未指定目标框架。”

如何解决 Visual Studio (MSBuild) 错误消息:

还原 NuGet 包时出错:“还原输入无效。未指定目标框架。”

msbuild visual-studio nuget-package-restore

10
推荐指数
3
解决办法
1万
查看次数

Visual Studio 2015 RC1 - 管理Nuget包以获得解决方案

解决方案级别打开VS2015RC1中的Nuget包管理器并过滤安装/更新可用时,我会获得解决方案中所有可用包的列表.

但是当我尝试升级一个包时,默认情况下所选择的解决方案中的所有内容都是预期的,这不是我想要的,因为我们有一个包含很多项目的大型解决方案,我显然不希望将JQuery添加到所有这些项目中.由于项目数量众多,我无法通过每个项目单独更新项目.

还有其他人有同样的问题吗?或者我错过了什么.

Nuget截图

编辑:没有错误,ACTION下拉列表需要更改为更新而不是安装.抱歉这个家伙.

visual-studio-2005 nuget nuget-package-restore

9
推荐指数
1
解决办法
1210
查看次数

Jenkins-运行NuGet软件包还原以生成此文件

当我在Jenkins构建服务器上构建.NET Standard 2.0库时

C:\Program Files\dotnet\sdk\2.1.302\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets(198,5): error : Assets file 'C:\Jenkins\workspace\<Project>\Sources\Library\obj\project.assets.json' not found. Run a NuGet package restore to generate this file. [C:\Jenkins\workspace\<Project>\Sources\Library\Library.csproj]
Run Code Online (Sandbox Code Playgroud)

我在构建日志中遇到了以上错误。

我搜索了错误并找到了解决方案

然而,

dotnet resotre <Solution Name>
Run Code Online (Sandbox Code Playgroud)

在开始构建之前清理工作区时,该解决方案无法帮助我。

因此,我在MSBuild之前插入命令,但失败了

C:\Program Files\dotnet\sdk\2.1.302\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets(198,5): error : Package Microsoft.CodeAnalysis.CSharp.Workspaces, version 2.8.0 was not found. It might have been deleted since NuGet restore. Otherwise, NuGet restore might have only partially completed, which might have been due to maximum path length restrictions. [C:\Jenkins\workspace\<Project>\Sources\Web\Web.csproj]
Run Code Online (Sandbox Code Playgroud)

根据解决方案参考,也许升级Nuget Package Installer可以帮助我。但是我不知道如何通过命令行升级Nuget软件包安装程序 ...

msbuild jenkins nuget-package-restore

9
推荐指数
2
解决办法
7453
查看次数

让 NuGet 寻找满足通配符的更新包

使用 SDK 样式的 csproj。

设想:

项目:

<PackageReference Include="MyNamespace.Package" Version="3.5.4-*" />
<PackageReference Include="MyNamespace.Other" Version="3.5.3" />
Run Code Online (Sandbox Code Playgroud)

安装:

MyNamespace.Package 3.5.4-pre.1
MyNamespace.Other 3.5.3
Run Code Online (Sandbox Code Playgroud)

在 NuGet 存储库中:

MyNamespace.Package 3.5.4-pre.1
MyNamespace.Package 3.5.4-pre.2
MyNamespace.Other 3.5.3
MyNamespace.Other 3.5.4
MyNamespace.Other 3.6.0
Run Code Online (Sandbox Code Playgroud)

希望 NuGet 修改任何PackageReference条目。我确实希望 NuGet 安装MyNamespace.Package满足通配符的最新版本,此处为 3.5.4-pre.2.

有没有任何内置的方法可以实现这一目标?

.net csproj nuget nuget-package-restore

9
推荐指数
1
解决办法
4164
查看次数

TFS无法恢复NuGet包

我有TFS做一些持续的集成构建.今天,它打破了一个解决方案.似乎找不到AutoMapper.所有其他包装都可以找到.

几个相关点:

  • 没有任何软件包在源代码管理中,我们让TFS恢复它们.
  • 我们有一个内部NuGet提要,但它似乎不是其他解决方案中的问题,在这个解决方案中我们仍然得到实体框架来恢复 - 只是不是AutoMapper.
  • 我尝试删除并重新添加NuGet包.没运气.
  • 如果我使用远程桌面连接到构建服务器并在Visual Studio中打开项目,它将恢复包并构建正常.
  • 我可以通过执行D:\"Program Files"\"Microsoft Team Foundation Server 12.0"\Tools\Nuget.exe restore后跟手动构建msbuild MySolutoin.sln
  • 我们的TFS服务器安装在我们的D:\驱动器上.

这来自TFS日志:

D:\Program Files\Microsoft Team Foundation Server 12.0\Tools\nuget.exe restore "C:\Builds\1\MyCompany Web\FclQuoteWcfService\src\FclQuoteWcfService.sln" -NonInteractive
Installing 'EntityFramework 6.1.3'.
Installing 'InternalPackage 1.0'.
Successfully installed 'InternalPackage 1.0'.
Successfully installed 'EntityFramework 6.1.3'.
Unable to find version '3.3.1' of package 'AutoMapper'.
C:\Program Files (x86)\MSBuild\12.0\bin\amd64\MSBuild.exe /nologo /noconsolelogger "C:\Builds\1\MyCompany Web\FclQuoteWcfService\src\FclQuoteWcfService.sln" /nr:False /fl /flp:"logfile=C:\Builds\1\MyCompany Web\FclQuoteWcfService\src\FclQuoteWcfService.log;encoding=Unicode;verbosity=normal" /p:SkipInvalidConfigurations=true /m /p:OutDir="C:\Builds\1\MyCompany Web\FclQuoteWcfService\bin\\" /p:VCBuildOverride="C:\Builds\1\MyCompany Web\FclQuoteWcfService\src\FclQuoteWcfService.sln.vsprops" /dl:WorkflowCentralLogger,"D:\Program Files\Microsoft Team Foundation Server 12.0\Tools\Microsoft.TeamFoundation.Build.Server.Logger.dll";"Verbosity=Normal;BuildUri=vstfs:///Build/Build/230;IgnoreDuplicateProjects=False;InformationNodeId=12;TargetsNotLogged=GetNativeManifest,GetCopyToOutputDirectoryItems,GetTargetPath;TFSUrl=http://ctidev2k8:8080/tfs/MyCompany;"*WorkflowForwardingLogger,"D:\Program Files\Microsoft Team Foundation …
Run Code Online (Sandbox Code Playgroud)

tfs tfsbuild nuget nuget-package-restore

8
推荐指数
1
解决办法
6139
查看次数

有没有一种从Visual Studio 2015项目自动创建NuGet包的简单方法?

在Visual Studio 2015之前,将项目设置为自动生成NuGet包非常简单.具体来说,你做了:

  1. .nu​​spec文件添加到项目中
  2. 在解决方案右键单击上下文菜单中启用NuGet包还原
  3. 编辑项目.csproj文件并将build属性设置<BuildPackage>为true

就是这样!

但是,从VS 2015开始,已删除MSBuild集成的程序包还原,并替换为新的自动程序包还原.虽然这些都是好消息,但似乎将build属性设置<BuildPackage>为true不再触发自动包构建.

这是功能的重大突破!有没有办法在不使用后期构建事件的情况下设置NuGet的自动构建?具体来说,我正在寻找一个MSBuild解决方案,因为它构成了我的构建工作流程的支柱.

msbuild nuget nuget-package-restore visual-studio-2015

8
推荐指数
2
解决办法
9389
查看次数

使用asp.net core rc2从Visual Studio Team Services中未经授权的nuget包

我无法从asp.net核心Web应用程序(RC2)中的Visual Studio Team Services订阅源安装/恢复nuget包.我收到以下内容:

错误:响应状态代码不表示成功:401(未授权).

我正在运行Visual Studio Community 2015 Update 2和nuget版本3.4.4.我能够在其他项目类型中从此Feed安装/恢复软件包.

我是否需要做一些其他事情才能将我的凭据传递给asp.net核心Web应用程序?

重现步骤:

从Team Services包选项卡中选择"Connect to Feed"并复制NuGet包源URL

在visual studio - >工具 - > NuGet包管理器 - >包管理器设置 - >包源并从vso添加源URL

然后从我的ASP.NET核心Web应用程序(.NET Framework)项目右键单击引用 - >管理NuGet包 - >从包源选择我的订阅源(列出包) - >单击以安装

在输出中:

Installing NuGet package xxxxx 
Successfully installed xxxxx to WebApplication1
========== Finished ==========
Run Code Online (Sandbox Code Playgroud)

然后它会尝试恢复我得到的包:

error: Response status code does not indicate success: 401 (Unauthorized).
error: Failed to retrieve information from remote source
Run Code Online (Sandbox Code Playgroud)

在web项目引用中 - 包有警告图标 - NU1001无法解析依赖关系xxxxx

nuget-package nuget-package-restore azure-devops asp.net-core

8
推荐指数
4
解决办法
2万
查看次数

忽略 Azure Pipelines 中 .vdproj 项目的 NuGet 包还原

我正在尝试针对包含Visual Studio Installer Project的 .NET Framework 4.7.2 解决方案设置 Azure DevOps 构建管道。我已在 Windows Server 2019 VM 上设置了自托管代理,该 VM 安装了 Visual Studio 2019 Community。构建管道包含 NuGet 安装程序任务,后跟 NuGet 任务,设置用于恢复引用的 NuGet 包。下面是 YAML 片段:

- task: NuGetCommand@2
  inputs:
    command: 'restore'
    restoreSolution: '$(solution)'
Run Code Online (Sandbox Code Playgroud)

但是,使用此配置运行构建会导致构建日志中出现以下错误:

[错误]nuget 命令失败,退出代码(1) 和错误(C:\##############.vdproj(1,1): 错误 MSB4025: 项目文件无法已加载。根级别的数据无效。第 1 行,位置 1。)

这似乎是由于新版本的 nuget.exe 中的性能增强所致。基于GitHub 问题的建议是使用 MSBuild 设置跳过不存在的包目标RestoreUseSkipNonexistentTargets

GitHub问题提到使用NUGET_RESTORE_MSBUILD_ARGS NuGet CLI环境变量来设置此属性,但我不知道如何通过NuGet构建任务来实现这一点。

false由于 NuGet 现在已与 MSBuild 集成,因此我尝试通过 NuGet 任务上的命令行参数设置此属性。我修改了 YAML,将命令设置为custom以便传递参数。我的语法基于MSBuild 恢复文档。现在看起来如下:

- task: …
Run Code Online (Sandbox Code Playgroud)

msbuild nuget nuget-package-restore azure-devops azure-pipelines

8
推荐指数
1
解决办法
8271
查看次数

NuGet 包需要在构建之前恢复。NuGet MSBuild 目标缺失且需要构建

我在 macOS Big Sur 中使用 Visual Studio 版本 8.10.8(最新)。我已经克隆了 Asp .Net 项目的存储库。当我尝试运行该项目时,我得到了

NuGet 包需要在构建之前恢复。NuGet MSBuild 目标缺失,但需要进行构建。还原 NuGet 包时会生成 NuGet MSBuild 目标

这个错误。

屏幕截图: 主项目的 csproj
错误图像。

.net asp.net entity-framework visual-studio nuget-package-restore

8
推荐指数
2
解决办法
8321
查看次数

恢复项目的 NuGet 包失败...:找不到路径的一部分

我正在尝试在 Visual Studio (.NET Framework 4.72) 中运行单元测试项目。

现在项目已经成功构建/运行,但是仍然出现NuGet包无法恢复的错误(文件路径实际上是错误的并且不存在)。如何更改为正确的文件路径并告诉 VS 不要查找错误的路径?这是错误:

项目 Tests_WeatherData 的 NuGet 包还原失败:找不到路径 'C:......\Begin\packages\MSTest.TestAdapter.1.3.2\build/_common/zh-Hans/Microsoft.VisualStudio 的一部分。 TestPlatform.MSTestAdapter.PlatformServices.resources.dll'

感谢您提供有关如何更改文件路径/恢复设置的任何建议。

c# unit-testing visual-studio nuget-package-restore visual-studio-2022

8
推荐指数
3
解决办法
2万
查看次数