【问题标题】:Ant -> Nant -> Visual Studio 2005 BuildAnt -> Nant -> Visual Studio 2005 构建
【发布时间】:2008-11-19 10:44:22
【问题描述】:

我正在开发一个大型 C++ 项目。它使用单个 Ant 脚本构建,这使得编译针对多个平台和编译器的相同源代码成为可能。

但是,我必须只为 Windows 平台和 Visual Studio 2005 C++ 编译器工作。如果我能在 Visual Studio 中编写代码和编译,而不是像现在这样使用 Notepad++ 和 Ant 脚本,那就太好了。

我尝试为 Visual Studio 2005 安装 Nant 和 Nant 插件,并使用现有的 Ant 脚本,但似乎 Ant 脚本不能用作 Nant 脚本。

有没有办法将 Ant 脚本转换为 Nant?是否有任何其他方法可以解决这个问题,或者我必须手动创建 Visual Studio 解决方案和项目?

我会尽量避免这种解决方案,因为我有一堆我不知道在这种情况下如何使用的测试。

【问题讨论】:

    标签: c++ visual-studio-2005 ant nant visual-c++-2005


    【解决方案1】:

    据我所知,没有自动方法可以将 Ant 脚本转换为 NAnt。但是,由于 NAnt 是基于 Ant 的,因此只要任务是“核心”任务,转换过程就不会离原来的太远。可能在 Ant 脚本上进行 XSLT 转换以转换为 NAnt,因为两者都是 XML。如果要走这条路,则应根据原始 Ant 脚本动态地完成转换,以便只需要维护一组脚本。

    如果您想在 Visual Studio 中编写和编译您的 C++ 代码,则很难超越 IDE 内置的功能。但是,这需要创建项目文件。否则,似乎有人会冒着使用该工具进行艰苦战斗的风险。

    测试的一个选项是通过custom build step 调用来运行它们。

    【讨论】:

      【解决方案2】:

      根据我的经验,将 VS 与 ant 集成的最佳方法是在 IDE 端调用 ant 作为自定义构建步骤(正如 Scott Saad 建议的那样),并从 ant 调用 msbuild.exe 作为可执行文件来构建从命令行项目。

      我知道这个问题已经得到解答——我只是想建议使用 msbuild 的可能性,因为它是迄今为止从 ant 本身构建 VS 项目的最简单方法。

      【讨论】:

      • msbuild/vcbuild 在这种情况下非常出色,是的。
      【解决方案3】:

      使用封装在 NAnt 任务中的 MSBuild 任务。我在上一份工作中必须这样做,这是我能想出的最好的解决方案,但我可能会很糟糕。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-10-28
        • 2010-09-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-11-12
        相关资源
        最近更新 更多