【问题标题】:How do I pass 2 parameters to Nant script?如何将 2 个参数传递给 Nant 脚本?
【发布时间】:2010-02-16 14:20:30
【问题描述】:

我必须编写一个 Nant 脚本,它将在命令行上接受 2 个参数。第一个只是一个选项,具有以下格式:-myOption。第二个需要用引号括起来:“带有空格的一些值”。

例如-myOption "这个值"

我是 Nant 的新手,所以到目前为止我没有成功,不知道如何输出命令进行调试。

这是我目前所拥有的:

<target name="Build" depends="SetupConfig">
<exec workingdir="${refactory.basedir}" program="${exe.name.mfg.factory}" basedir="${refactory.basedir}" commandline="-myOption:">  
 <arg>${refactory.clientconfig}</arg>   
</exec>

我正在尝试使用“命令行”属性和 args 嵌套元素创建命令。 args 元素应该提供 qoutes。

有人能告诉我这应该是什么样子吗?谢谢。

【问题讨论】:

    标签: .net ant build-automation nant


    【解决方案1】:

    我需要承认,看着你的代码 sn-p 我并不完全清楚你想要实现的目标。

    无论如何,这就是您将两个参数传递给 NAnt 脚本的方式(您所声称的关于问题标题的内容):

    给定一个 NAnt 脚本 example.project.build,其内容如下:

    <?xml version="1.0"?>
    <project name="example.project" default="example.target" basedir=".">
      <target name="example.target">
        <echo message="${arg.option}" />
        <echo message="${arg.whitespace}" />
      </target>
    </project>
    

    ...你会打电话给

    nant -buildfile:example.project.build -D:arg.option=foo -D:arg.whitespace="bar and bar"
    

    ... 执行脚本example.project.build 并将参数arg.optionarg.whitespace 传递给它。

    【讨论】:

      【解决方案2】:

      试试这个:

      <target name="Build" depends="SetupConfig">
      <exec workingdir="${refactory.basedir}" program="${exe.name.mfg.factory}"  basedir="${refactory.basedir}">
          <arg value="-myOption" />
          <arg value="${refactory.clientconfig}" />
      </exec>
      

      更多信息请查看Nant Exec task documentation

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-07-18
        • 2011-08-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多