【发布时间】:2018-03-20 20:36:32
【问题描述】:
我有一个包含两个项目的 c# 解决方案
solution
myLib
myLib.models
myLib 有一个对 myLib.Models 的项目引用
TeamCity 构建解决方案并将每个项目打包到一个 nuget 包中。用内部版本号替换版本号。
每个项目都有一个 nuspec 文件。
myLib.nuspec 定义了对 myLib.models 的依赖。当 myLib 被其他项目使用时,我希望 nuget 获取对模型库的依赖项并下载它及其任何依赖项。
让 teamcity 更新 myLib.nuspec(或其他解决方案)以使最终包中所需的 myLib.models 版本与内部版本号相同的最佳方法是什么?
即
<package>
<metadata>
<id>myLib</id>
<version>**[teamcitybuildnumber]**</version>
<dependencies>
<group targetFramework="net462">
<dependency id="myLib.models" version="**[teamcitybuildnumber]**"/>
</group>
</dependencies>
</metadata>
<files>
<file src="bin/*/myLib.dll" target="lib/net462" />
</files>
</package>
【问题讨论】:
-
您是否考虑过迁移到新的基于 sdk 的 csproj 格式(默认为 .net 标准和 .net 核心项目类型)以获得 msbiuld 集成打包?他们涵盖了这种情况(不需要 nuspec)
-
我有一些 .net 标准项目,但我没有看到以这种方式管理依赖项的选项?