从本地文件夹自动更新 nuget 包
Auto update nuget package from a local folder
我的 .NET Core 项目引用了另一个项目的 class 库。
我像这样将 nuget 包发布到本地文件夹:
"scripts": {
"postcompile": [
"dotnet pack --no-build --configuration %compile:Configuration% -o D:\mynugetpackages\%project:Name%"
]
}
然后我从这个文件夹添加对另一个项目的引用。
每次我更新 class 库时,我都必须手动去管理 nuget 包,然后从引用项目中的 Visual Studio 更新 nuget 包。
有没有办法自动执行此操作,以便当我进行更新并发布最新的 nuget 包时,引用项目会自动更新到最新更新?
不,Visual Studio 无法自动检测包已更新(在本地或远程源中)。
您可以在目标项目中为 运行 nuget update 编写脚本以获取最新的包,但您仍然可能需要手动启动脚本。这至少比在 Visual Studio.
中通过 NuGet GUI 手动单击要快
另一种选择是将 class 库放在与主项目相同的解决方案文件夹结构中,并将其作为项目依赖项引用:
"dependencies": {
"MyClassLib": {
"target": "project"
}
}
不过,这仅在您能够采用此文件夹结构时才有效:
src/
MyProject/
MyClassLib/
我的 .NET Core 项目引用了另一个项目的 class 库。
我像这样将 nuget 包发布到本地文件夹:
"scripts": {
"postcompile": [
"dotnet pack --no-build --configuration %compile:Configuration% -o D:\mynugetpackages\%project:Name%"
]
}
然后我从这个文件夹添加对另一个项目的引用。
每次我更新 class 库时,我都必须手动去管理 nuget 包,然后从引用项目中的 Visual Studio 更新 nuget 包。
有没有办法自动执行此操作,以便当我进行更新并发布最新的 nuget 包时,引用项目会自动更新到最新更新?
不,Visual Studio 无法自动检测包已更新(在本地或远程源中)。
您可以在目标项目中为 运行 nuget update 编写脚本以获取最新的包,但您仍然可能需要手动启动脚本。这至少比在 Visual Studio.
中通过 NuGet GUI 手动单击要快另一种选择是将 class 库放在与主项目相同的解决方案文件夹结构中,并将其作为项目依赖项引用:
"dependencies": {
"MyClassLib": {
"target": "project"
}
}
不过,这仅在您能够采用此文件夹结构时才有效:
src/
MyProject/
MyClassLib/