Mục tiêu của tôi là xây dựng kịch bản kiến xây dựng một tập tin chiến tranh và bao gồm các lọ ivy biết dự án này phụ thuộc vào. Mã tốt nhất mà tôi có thể đưa ra vào lúc này làLàm thế nào để sử dụng ivy để xây dựng một cuộc chiến tranh với ra sao chép vào một thư mục lib
<mkdir dir="dist/lib"/>
<ivy:retrieve pattern="dist/lib/[artifact].[ext]" sync="true"/>
<war destfile="dist/${ivy.module}.war" basedir="build" includes="**/*.class"
webxml="${war.webxml}">
<fileset dir="${war.web}"/>
<lib dir="dist/lib"/>
</war>
Vấn đề với mã này là bản sao các lọ hai lần. Khi vào thư mục dist/lib của tôi và một lần nữa vào cuộc chiến khi nó được tạo ra. Nó hoạt động nhưng tôi không thể lắc cảm giác có một cách tốt hơn.
Những gì tôi muốn làm là một cái gì đó giống như sau
<ivy:cachepath pathid="locpathref.classpath"/>
<war destfile="dist/${ivy.module}.war" basedir="build" includes="**/*.class"
webxml="${war.webxml}">
<fileset dir="${war.web}"/>
<lib refid="locpathref.classpath"/>
</war>
Vấn đề là tag lib không mất trong một refid dưới mọi hình thức. Bất kỳ ý tưởng hoặc tôi bị mắc kẹt với một tập hợp thêm các bản sao tập tin?
Sử dụng thì thẻ lib sẽ hoạt động như mong đợi –