visual-studio - 通过 `dotnet add package ..` 处理 nugets 与通过 Visual Studio UI 添加 nugets 的区别
问题描述
我需要在通过 nuget 发布的c
库中使用本机库(支持多个Core
TF
s 和)。.net framework
我通过.csproj
文件和runtimes
文件夹配置它。但是我注意到,在某些情况下,当我通过 NuGet 使用dotnet add package ..
时,本机库在使用后不会复制到预期的文件夹中,但是当我使用VS
UI Nuget package manager
->Manage Nuget Packages for Solution
时,所有文件都放置在正确的位置。
所以,我认为这Nuget package manager
不仅仅是 call 步骤dotnet add package ..
,但目前还不清楚到底发生了什么,任何帮助将不胜感激。
解决方案
实际上,与VS IDE 中的Nuget 包管理器 UIdotnet add package
的效果相同。他们只是将 Nuget 包安装到您的项目中,没有区别。不会执行其他操作。就像在中添加一些 xml 节点
所以我认为你的项目还有其他问题。
请查看以下提示以解决您的问题:
1) 首先清理 nuget 缓存或仅删除C:\Users\xxx(current user)\.nuget\packages
.
2)如果runtimes
您的项目下不存在该文件夹,我认为它是由dependency assets
. 喜欢ExcludeAssets=runtime or native
。它将阻止runtimes
文件夹的功能。请看这个官方文档。
所以在你安装完nuget包后,你应该检查你的csproj
文件,并确保没有这样的
<ExcludeAssets>runtime;native</ExcludeAssets>
在PackageReference节点下。
如果有这个节点,请删除。
3)删除bin
和obj
文件夹。然后重建您的项目以再次测试。或者,如果您使用 dotnet 命令行,则应另外添加 dotnet build
命令。在我身边,我跑dotnet build -p:platform=xxx;Configuration=Release
。
推荐阅读
- javascript - 如何将输入字段中的动态值传递给vue-circle组件的progress prop
- batch-file - 批处理循环不循环
- java - 从 wsdl 生成的类的参数顺序错误
- typescript - 具有任意最小长度 N 的 TypeScript 数组,可以很大
- r - 带有 Rshiny 模块应用程序的 updateTabsetPanel
- java - 在 Google 前端负载均衡器后面运行时如何正确从 Spring Boot 2.3 重定向到 HTTPS
- gitlab - 此 GitLab CI 配置无效:根配置包含未知键:标签
- assembly - 如何减小弦臂组件的尺寸
- javascript - TypeError:无法读取未定义 Node Js firebase 函数的属性“修剪”
- r - 如何根据使用 lubridate 的时间更改日期时间向量的日期?