如何解决如何防止antnetbeans两次构建同一项目
我有一个带ant的netbeans Java项目,该项目使用其他几个类似的项目作为库,也使用其他库。考虑以下依赖性:
A
/ \
B C
\ /
D
使用netbeans生成的build-impl.xml文件的问题在于,在我构建A
时D
被构建了两次。我在D
的netbeans生成的build-impl.xml文件中看到以下内容:
<target depends="init" name="some-target" unless="no.deps">
<condition property="build.deploy.on.save" value="false">
<not>
<isset property="build.deploy.on.save"/>
</not>
</condition>
<ant antfile="${project.B}/build.xml" inheritall="false" target="dist-ear">
<property location="${build.dir}" name="dist.ear.dir"/>
<property name="deploy.on.save" value="${build.deploy.on.save}"/>
</ant>
<ant antfile="${project.C}/build.xml" inheritall="false" target="dist-ear">
<property location="${build.dir}" name="dist.ear.dir"/>
<property name="deploy.on.save" value="${build.deploy.on.save}"/>
</ant>
</target>
执行目标some-target
时,它将首先构建B
,然后构建C
,然后继续A
。很好,但是因为B
和C
的build-impl.xml文件的结构与D
相同,因此它们都将首先构建A
。
我解决此问题的第一个想法是通过创建新属性来跟踪已构建的项目和未构建的项目,并覆盖build.xml中的build-impl.xml中的某些目标(该目标导入build-impl .xml)的问题是,我没有四个相互依赖的项目,而是数百个项目,因此此解决方案将需要大量工作,并且每次项目中的一个依赖项发生更改时,我都需要更新build.xml。
我的另一种想法是从头开始编写我自己的build.xml文件,该文件只会生成一次所有内容,但这与另一种想法具有相同的缺点,只是更糟。
如何构建A
时阻止D
两次构建?也许,有一些netbeans调整会修改build-impl.xml以使我受益吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。