【问题标题】:How do you integrate ivy with MSbuild如何将 ivy 与 MSbuild 集成
【发布时间】:2011-09-26 07:38:12
【问题描述】:

结合 IVY + msbuild,哪种方法对您来说效果很好?

我们的目标是将 IVY 集成到 C#/C++ 构建过程中以进行依赖关系解析和发布。我们尝试在构建开始和结束时将其添加到自定义任务中,并尝试使用 ant+ apache-ant-dotnet 包装 msbuild 调用。

其他选项可能是 gradle、builder、rake。

你用什么?

谢谢

彼得

【问题讨论】:

  • 你还在用 Ivy 和 MsBuild 吗?
  • 不再存在。我建议使用 gradle 进行编排。这似乎是 maven 功能、ant 实用性与更易于遵循的代码/习语的完美结合。

标签: ant msbuild ivy msbuild-task


【解决方案1】:

大多数构建技术都可以使用本地目录中的库。我建议在构建开始时使用command-line ivy program 来填充它:

java -jar ivy.jar -ivy ivy.xml -settings ivysettings.xml -retrieve "lib/[conf]/[artifact].[ext]"

您的依赖项列在名为 ivy.xml 的标准 ivy 文件中。 ivysettings.xml

中描述了远程存储库的协议、位置和布局

这种方法的优势(与切换到 Gradle 等相比)是您不会尝试替换现有的构建工具。 Ivy 只关心管理依赖关系。

【讨论】:

  • 为未来的读者。我看常春藤命令行的方式是它是“愚蠢的”。您将一些文件推送到带有版本和包名的二进制存储库中。稍后,另一个需要该“包名”的进程将使用 ivy-command-line 从二进制存储库中检索文件。另外,我更喜欢 Ivy 版本命名约定而不是 Nuget。 “2.1+”对我来说很有意义。 “最新版本”对我来说很有意义。只是一种意见。对此回复投赞成票。
【解决方案2】:

几年来,我的团队一直非常成功地将 Ivy 用于 .NET。我知道还有几个对它投了信任票。 单独使用它。将调用包装到 msbuild 任务中。无需使用 Ant 集成。

【讨论】:

    猜你喜欢
    • 2020-04-04
    • 1970-01-01
    • 1970-01-01
    • 2011-02-20
    • 2010-09-14
    • 2013-03-25
    • 2017-01-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多