Gradle是Android的构建工具。前段时间我着手引领改造公司一个项目的框架,从单模块改造到多模块的,便于公司其它业务部门复用我们的模块。
团队某位MM需要为每个模块添加MakeJarLib(depend on build)任务,但发现编译执行一个基础模块的任务时,其它模块也总会一并build。让她犯难了,总以为是模块间有依赖,花了很大的精力确认是否有依赖关系,确认下来,实在找不到有依赖关系。最后没辙,只能带着疑惑及不安出了一个包给业务部门暂时先试用。然后将问题反馈给了我,原来她为每个模块的task名都是MakeJarLib,执行一个模块的MakeJarLib时,gradle会执行在其它模块下的同名task。
后来我进行了这样的改动:
1.为每个模块定义的不同的task名:MakeXXXXJarLib,XXXX为模块名;
2.在工程根目录的build.gralde下添加了subprojects配置,一个任务构建出所有模块的Jar包出来。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。