2011-02-02 13 views
7

Tôi đang sử dụng kiến ​​để xây dựng ứng dụng web của mình. Tôi chắc chắn điều này là đơn giản nhưng tôi không thể hiểu làm thế nào để nói với kiến ​​để tạo ra một thư mục cụ thể trong thư mục WEB-INF và sao chép các tập tin vào nó.Sử dụng tác vụ chống chiến tranh để bao gồm các tệp trong thư mục WEB-INF

nhiệm vụ chiến kiến ​​của tôi trông như thế này:

<target name="warItUp" depends="compile"> 
    <war destfile="MyApp.war" webxml="${home.dir}\WEB-INF\web.xml"> 

     <classes dir="${classes.dir}"/> 
     <classes file="${src.dir}/hibernate.cfg.xml"/> 
     <classes dir="${src.dir}" includes="**/*.hbm.xml"/> 

     <!-- Include the PDF files --> 
     <fileset dir="${home.dir}/PDFs"> 
      <include name="**/*.pdf"/> 
     </fileset> 

     <!-- Include the JSP files --> 
     <fileset dir="${home.dir}/JSPs"> 
      <include name="**/*.jsp"/> 
     </fileset> 

     <!-- Include the images --> 
     <fileset dir="${home.dir}/images"> 
      <include name="**/*"/> 
     </fileset>   
    </war> 

Tất cả các yếu tố fileset làm việc ví dụ: chúng bao gồm các tập tin pdf, jsp và hình ảnh trong thư mục gốc của tập tin chiến tranh.

Nhưng nếu tôi muốn tạo thư mục con trong thư mục WEB-INF của tệp chiến tranh và bao gồm các tệp trong đó, làm cách nào để chỉ định? ví dụ. nói rằng tôi muốn bao gồm WEB-INF/TagLibraryDescriptors/MyTagLib.tld trong tệp chiến tranh hoặc nếu tôi muốn tạo thư mục WEB-INF/JSP trong tệp chiến tranh của mình và sao chép tất cả các tệp JSP vào tệp đó.

Cảm ơn.

+0

Tìm thấy một giải pháp bản thân mình, thấy trả lời dưới đây . Xin lỗi vì đã lãng phí thời gian của bất cứ ai. – CodeClimber

Trả lời

14

OP tại đây, cảm ơn tất cả các câu trả lời. Tôi tìm thấy một giải pháp khác - có một yếu tố webinf có thể được đưa vào nhiệm vụ chiến tranh.

này sẽ sao chép các file từ thư mục nguồn JSP vào thư mục WEB-INF trong file chiến tranh:

<webinf dir="${home.dir}/JSPs" 
includes="**/*.jsp"> 
</webinf> 

trong khi điều này sẽ sao chép các file từ thư mục nguồn JSP vào thư mục WEB-INF/JSP (lựa chọn ưa thích của tôi):

<webinf dir="${home.dir}" 
includes="/JSPs/**/*.jsp"> 
</webinf> 

Tôi nghĩ tôi sẽ gắn bó với giải pháp này nhưng cảm ơn phản hồi.

1

Cố gắng tạo thư mục này vào dự án của bạn và sau đó chỉ cần thêm fileset như sau:

<fileset dir="${home.dir}/WEB-INF/mydirectory/*"> 
      <include name="**/*"/> 
</fileset>   
0

Tại sao không tạo cấu trúc thư mục bạn cần cách mkdir?

5

Là một thay thế cho các phần tử lồng nhau webinf, bạn cũng có thể sử dụng các yếu tố zipfileset, cho phép bạn chỉ định thư mục nguồn và tiền tố đường dẫn trong các kho lưu trữ:

<zipfileset dir="${home.dir}/JSPs" includes="**/*.jsp" prefix="WEB-INF/JSPs"/> 
Các vấn đề liên quan