战争蚂蚁任务与 needxml文件= "false"仍然抱怨



我的构建中有以下战争任务.xml即使 needxmlfile 设置为 falseAnt(版本 1.8.2)也会在 web.xml 文件不存在时抱怨("构建失败...部署描述符:/home/.../web/WEB-INF/web.xml 不存在")

我错过了什么?

  <target name="war" depends="build">                                                                           
    <mkdir dir="${build.dir}"/>                                                                                 
    <war                                                                                                        
      needxmlfile="false"                                                                                       
      basedir="${webroot.dir}"                                                                                  
      warfile="${build.dir}/${project.distname}.war"                                                            
      webxml="${webinf.dir}/web.xml">                                                                           
      <exclude name="WEB-INF/${build.dir}/**"/>                                                                 
      <exclude name="WEB-INF/src/**"/>                                                                          
      <exclude name="WEB-INF/web.xml"/>                                                                         
     </war>                                                                                                     
  </target>  

ANT 文档指出,webxml 属性是必需的,除非 needxmlfile 属性设置为 true

尝试此操作并使用文件集拉入可选的 Web.xml 文件。

@O'Connor:感谢您使用文件集拉取网络的提示.xml。但是,我不确定您对 needxmlfile 设置为 true 是否正确(至少在我的实验中,我目睹了与您描述的相反的情况)。无论如何,最后我意识到甚至不需要文件集,因为 war Ant 任务显然将所有内容打包在 basedir 下(除非明确排除),所以我现在使用以下 war 任务,无论是否存在 web.xml 文件都有效:

<target name="war" depends="build">                                                                      
   <mkdir dir="${build.dir}"/>                                                                            
   <war                                                                                                   
      needxmlfile="false"                                                                                  
      basedir="${webroot.dir}"                                                                             
      destfile="${build.dir}/${project.distname}.war">                                                      
      <exclude name="WEB-INF/${build.dir}/**"/>                                                            
      <exclude name="WEB-INF/src/**"/>                                                                     
    </war>                                                                                                
</target>         

将 needxmlfile 设置为 "true" 会导致 Ant 在"警告"期间找不到 web.xml 文件时发出抱怨。

相关内容

  • 没有找到相关文章

最新更新