【问题标题】:Cake script directly referencing a nuget直接引用 nuget 的 Cake 脚本
【发布时间】:2018-04-25 14:07:44
【问题描述】:

有没有更好的方法在蛋糕脚本中使用来自公共 nuget 的代码?

#tool nuget:?package=dbup-core&version=4.0.0-beta0003
#r "tools/dbup-core.4.0.0-beta0003/lib/netstandard1.3/dbup-core.dll"

这很好用,但感觉有点笨拙,因为我需要找到正在使用的 .Net 框架版本的路径。在这种情况下,我必须使用/lib/netstandard1.3

我尝试使用与#addin#tool 相同的preprocessor directive syntax,但没有成功。有这样的工作会很好:

#r nuget:?package=dbup-core&version=4.0.0-beta0003

【问题讨论】:

    标签: cakebuild


    【解决方案1】:

    工具和插件预处理器指令都处理指定 nuget 包的下载。主要区别在于工具预处理器指令仅将 nuget 包下载并解压缩到工具文件夹中,然后它不会引用其中包含的任何 dll。

    另一方面,插件预处理器正是这样做的。它将从提取的 nuget 包中查找 dll,并自动引用它们,以便可以在 Cake Script 中使用它们。应该不需要额外使用引用预处理器指令。

    您是否有一个示例存储库,其中显示了一个未按预期工作的脚本?根据使用的 Cake 版本,可能是加载了错误的目标框架 dll。

    如果您可以创建一个示例存储库来说明问题,那么我相信我们可以提供帮助。

    【讨论】:

    • 按照您的要求,我再次尝试了#addin 指令,这次它奏效了。这可能与用户错误有关。 Cake 的行为与您描述的一样。
    猜你喜欢
    • 1970-01-01
    • 2016-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多