【问题标题】:Conditional dependency in nugetnuget中的条件依赖
【发布时间】:2019-09-18 20:58:53
【问题描述】:

我有一个我想通过 nuget 交付的工具。我对它不是很熟悉,但到目前为止我读到的是你可以用条件定义依赖关系。条件也可以是环境变量吗?

我在这里找到了这个:

<ItemGroup>
    <!-- ... -->
    <PackageReference Include="Newtonsoft.Json" Version="9.0.1" Condition="'$(TargetFramework)' == 'net452'" />
    <!-- ... -->
</ItemGroup>

上面的示例中的TargetFramework 中的其他“变量”还有哪些?

还有两个包含我需要的依赖项,我怎么能说我需要其中一个而不是两个?如果还没有安装,我该如何定义我想要的?

【问题讨论】:

    标签: dependencies nuget


    【解决方案1】:

    是的,您可以在 Condition 中使用环境变量:

    仅在属性上使用Condition 属性来设置值 财产没有价值。例如,下面的代码设置 ToolsPath 属性到 c:\tools 仅当 ToolsPath 环境 变量未设置:

    &lt;ToolsPath Condition="'$(TOOLSPATH)' == ''"&gt;c:\tools&lt;/ToolsPath&gt;

    来源:How to: Use environment variables in a build

    可以在此处找到所有 MSBuild 内置属性的列表:https://stackoverflow.com/a/1453023/7225096

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-03-19
      • 2021-02-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多