除非在项目属性中修改版本号,否则 Nuget 包不包含最新代码
Nuget package does not contain latest code unless version number is modified in project properties
这是一个 NuGet 新手问题。
我有一个 .net core 2.0 class 库项目,我刚刚开始工作。我需要打包这个并将那个包安装到另一个 asp.net 项目中,该项目也处于初始阶段。
所以现在两个项目都发生了频繁的重大变化。
现在,每次我在 class 库项目中修改某些内容时,我都会将其打包到一个 .nupkg 文件并将其安装到我的 asp.net 项目中,这样我的更改就可以在asp.net 项目。
但是我的问题是,当我打包库时,我必须不断增加项目属性中的包版本,并将包更新到 asp.net 项目中的最新版本。
几乎每个版本都被缓存了。我已尝试清洁解决方案,但仍然没有成功。
我不想在这个阶段继续更改版本,因为我才刚刚开始,还没有设置 CI/CD 管道。
如何清除 nuget 包的所有痕迹,以便我可以使用更新的代码创建和安装新包而无需更改版本?
你可以做到。
如果它是旧式 csproj(即如果您使用的是 "packages.config" 文件),那么您只需删除 %SOLUTION_ROOT%\packages 文件夹(或其中的特定包) .这些包将在下一个版本中重新下载。
如果它是新式 csproj(即您的项目文件中有 <PackageReference>
个元素),则包将全局存储在 %USERPROFILE%\.nuget\packages\
中。删除此文件夹(或其中的特定包)的内容,将在下一次构建时重新下载该包。
编辑
刚刚注意到您使用的是 .NET Core 项目——在这种情况下,您几乎可以肯定使用的是新型 csproj 格式,所以请采纳我的第二个建议:)
这是一个 NuGet 新手问题。
我有一个 .net core 2.0 class 库项目,我刚刚开始工作。我需要打包这个并将那个包安装到另一个 asp.net 项目中,该项目也处于初始阶段。
所以现在两个项目都发生了频繁的重大变化。
现在,每次我在 class 库项目中修改某些内容时,我都会将其打包到一个 .nupkg 文件并将其安装到我的 asp.net 项目中,这样我的更改就可以在asp.net 项目。
但是我的问题是,当我打包库时,我必须不断增加项目属性中的包版本,并将包更新到 asp.net 项目中的最新版本。
几乎每个版本都被缓存了。我已尝试清洁解决方案,但仍然没有成功。
我不想在这个阶段继续更改版本,因为我才刚刚开始,还没有设置 CI/CD 管道。
如何清除 nuget 包的所有痕迹,以便我可以使用更新的代码创建和安装新包而无需更改版本?
你可以做到。
如果它是旧式 csproj(即如果您使用的是 "packages.config" 文件),那么您只需删除 %SOLUTION_ROOT%\packages 文件夹(或其中的特定包) .这些包将在下一个版本中重新下载。
如果它是新式 csproj(即您的项目文件中有 <PackageReference>
个元素),则包将全局存储在 %USERPROFILE%\.nuget\packages\
中。删除此文件夹(或其中的特定包)的内容,将在下一次构建时重新下载该包。
编辑
刚刚注意到您使用的是 .NET Core 项目——在这种情况下,您几乎可以肯定使用的是新型 csproj 格式,所以请采纳我的第二个建议:)