nuspec文件中的Teamcity变量替换

Kan*_*yan 13 nuget-package teamcity-7.0

这是我的nuspec文件,用于获取teamcity生成的包.该版本由teamcity变量实际设置.

<?xml version="1.0"?>
<package >
  <metadata>
    <id>Company.Name</id>
    <version>$version$</version>
    <title>Title</title>
    <authors>My Name</authors>
    <owners>We are the owners</owners>
    <requireLicenseAcceptance>false</requireLicenseAcceptance>
    <description>Support</description>
    <releaseNotes>Summary of changes made in this release of the package.</releaseNotes>
    <copyright>Copyright 2013</copyright>
    <tags>Core</tags>
    <dependencies>
        <dependency id="Core.Assembly" version="[1.0.$teamcity.build.id$]" />   
    </dependencies>
  </metadata>
</package>
Run Code Online (Sandbox Code Playgroud)

如何用当前的teamcity构建ID号替换版本?既尝试$teamcity.build.id$%teamcity.build.id%

这没用.我也尝试过$version$.版本在包的版本标记中正确替换,但不在依赖项上.

我想使用当前版本中相同版本的软件包,因此它们具有相同的内部版本号.

Kan*_*yan 13

已解决Teamcity Build Features中的AssemblyInfo修补程序.

修理,

配置步骤 - >构建步骤 - >添加构建功能(按钮)

添加AssemblyInfo Patcher并将版本提供给1.0.%teamcity.build.id%并解决了该问题.

在具有$ version $的版本中使用依赖库解析它.

希望能帮助到你.


Man*_*ani 11

您无需通过TeamCity变量替换它.使用-version开关,例如:

nuget.exe pack <nuspec> -version %teamcity.build.id%
Run Code Online (Sandbox Code Playgroud)

这样,nuspec版本将在运行时被覆盖.

  • 从属库需要具有相同的版本.已使用Assembly Patcher解决. (3认同)