我正在维护一个构建系统,该系统使用来自一个目录的svnant来更新另一个目录中的大量项目.然后它移动到已更新的那些项目之一,并进行实际构建. 从主要项目做一切是否安全?主项目是
从主要项目做一切是否安全?主项目是否可以使用svnant自行更新,或者如果svn需要更新ant当前正在使用的build.xml文件,是否会出现问题?
对于自我更新的主项目build.xml – 您可能会遇到运行subversion更新和一次构建的问题.问题的本质取决于对build.xml进行了哪些更改.简单地重新运行构建可能会修复它,因为在启动时加载的build.xml Ant将是最新的.如果你真的必须可靠地更新build.xml并一次性执行构建,你可以考虑在antcall
任务中包含构建的post-svnant部分.当Ant运行antcall的目标时,它会重新读取build.xml,因此在调用Ant之后对该文件的任何更改都会被考虑在内. Antcall从头开始处理,所以如果你有(可能是昂贵的)初始化,则需要再次运行.