问题描述
在清理并安装到install / conf目录后,我想将属性附加到其中,因此,其想法是复制现有的install / conf并将其放在temp目录中,然后调用自定义任务,该任务将接管此现有目录conf属性,并将使用新属性进行更新,但不会被覆盖。
我为此使用了一个常规类,并将现有属性放在map中,并使用./conf文件夹中的新属性进行putAll。
但是当我只调用此自定义任务时会出现一个问题,它可以正常工作并进行所有更改,但是当我使用它调用所有其他任务(如clean,copyLib等所有任务)时,它将被覆盖。
我相信这是由于新文件夹install / conf,install / lib以及所有这些事情而发生的,这两个任务不同步或类似的事情,我如何使该文件夹可用于新创建的任务。当我更改自定义任务的属性的目标位置时,它在所有任务中也能正常工作。我还确保我的自定义任务仅在清理任务和其他任务之后运行,但仍然没有运气
def copyExistingConf(){
// copies the conf from install to some temp before clean runs
}
def customTask(){
CopyConf confObject= new CopyConf("$Project_dir/conf/abc.properties","$Project_dir/install/conf/abc.properties")
confObject.main() //I created main method which does all this putall and load
}
def copyLib(type:Copy){
from "lib" into "install/lib"
}
def clean(type:Delete){
delete "install"
}
def deploy(){
dependson =['copyLib','copyConf']
task['copyLib'].mustRunAfter('clean')
task['copyConf'].mustRunAfter('copyLib')
}
我无法复制实际代码,但仅与此类似
我尝试仅在部署中运行单个任务,但它可以正常工作,但是当我使用从文件夹复制来安装/文件夹的任何任务时,它会覆盖所做的更改。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)