【问题标题】:Replace dependency version number in nuspec with teamcity用 teamcity 替换 nuspec 中的依赖版本号
【发布时间】: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 标准项目,但我没有看到以这种方式管理依赖项的选项?

标签: c# nuget teamcity


【解决方案1】:

构建功能中的File Content Replacer 怎么样?你可以用它修改任何你想要的东西。

【讨论】:

  • yyeessss。我知道这是可能的,但它不会很有针对性
猜你喜欢
  • 2015-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-07-12
  • 1970-01-01
  • 1970-01-01
  • 2019-12-25
  • 2023-04-08
相关资源
最近更新 更多