Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
需要用户输入的ant任务?_Ant_Modal Dialog - Fatal编程技术网

需要用户输入的ant任务?

需要用户输入的ant任务?,ant,modal-dialog,Ant,Modal Dialog,我偶尔会通过肌肉记忆来运行一个任务,并寻找一种方法来确保在运行任务之前运行该任务 在运行ant任务之前,是否有办法弹出一个模式对话框或需要某种用户验证 对于core ant,请使用;如果需要模式切换对话框,请使用;对于core ant,请使用;如果需要模式切换对话框,请使用;下面是一个要求确认用户名的示例。 您可以选择是、否或取消。如果您选择“否”,则系统将要求您输入 第一个目标将依次调用另外两个目标 <property name="username" value="J

我偶尔会通过肌肉记忆来运行一个任务,并寻找一种方法来确保在运行任务之前运行该任务


在运行ant任务之前,是否有办法弹出一个模式对话框或需要某种用户验证

对于core ant,请使用;如果需要模式切换对话框,请使用;对于core ant,请使用;如果需要模式切换对话框,请使用;下面是一个要求确认用户名的示例。 您可以选择是、否或取消。如果您选择“否”,则系统将要求您输入

第一个目标将依次调用另外两个目标

  <property name="username"         value="John"/>
  <property name="default_username" value="Paul"/>

  <target name="demo" description="confirm or enter a username."
          depends="confirm_username, ask_username" />

这是打开“是/否/取消”对话框的对话框

  <target name="confirm_username" >
    <input message="Is your username [${username}] ?"
           validargs="Yes,Other,Cancel" addproperty="do.continue"/>

    <condition property="username" value="${username}">
      <equals arg1="Yes" arg2="${do.continue}"/>
    </condition>

    <condition property="result.other">
      <equals arg1="Other" arg2="${do.continue}"/>
    </condition>

    <fail message="Aborted." >
      <condition>
        <equals arg1="Cancel" arg2="${do.continue}"/>
      </condition>
    </fail>
  </target>

这个要求文本输入

  <target name="ask_username" if="result.other">
    <input message="Give user name (defaults to [${default_username}])" 
           addproperty="username" 
           defaultvalue="${default_username}"/>
  </target>

下面是一个要求确认用户名的示例。 您可以选择是、否或取消。如果您选择“否”,则系统将要求您输入

第一个目标将依次调用另外两个目标

  <property name="username"         value="John"/>
  <property name="default_username" value="Paul"/>

  <target name="demo" description="confirm or enter a username."
          depends="confirm_username, ask_username" />

这是打开“是/否/取消”对话框的对话框

  <target name="confirm_username" >
    <input message="Is your username [${username}] ?"
           validargs="Yes,Other,Cancel" addproperty="do.continue"/>

    <condition property="username" value="${username}">
      <equals arg1="Yes" arg2="${do.continue}"/>
    </condition>

    <condition property="result.other">
      <equals arg1="Other" arg2="${do.continue}"/>
    </condition>

    <fail message="Aborted." >
      <condition>
        <equals arg1="Cancel" arg2="${do.continue}"/>
      </condition>
    </fail>
  </target>

这个要求文本输入

  <target name="ask_username" if="result.other">
    <input message="Give user name (defaults to [${default_username}])" 
           addproperty="username" 
           defaultvalue="${default_username}"/>
  </target>


ant中的用户输入应该避免。。。也许你可以让目标回波“你真的想这么做吗?!”并等待10秒再继续(给你时间杀死它)。这将使您的团队成员免于沮丧,因为他们认为只需要耐心地检查并查看它,等待输入。@KKB关于自动化的ant脚本,您是对的,但jedierikb说他正在“运行一个任务…”,这似乎是一个必须有意启动的构建脚本。也可以在可配置的超时后扩展ant核心输入任务以继续。应避免在ant中进行用户输入。。。也许你可以让目标回波“你真的想这么做吗?!”并等待10秒再继续(给你时间杀死它)。这将使您的团队成员免于沮丧,因为他们认为只需要耐心地检查并查看它,等待输入。@KKB关于自动化的ant脚本,您是对的,但jedierikb说他正在“运行一个任务…”,这似乎是一个必须有意启动的构建脚本。还可以扩展ant core输入任务以在可配置的超时后继续。