2017-03-08 57 views
1

在Gradle项目中根build.gradle文件附带的settings.gradle文件中,是否可以定义可用于项目中所有子文件中的build.gradle文件的函数?你可以在settings.gradle中定义函数吗?

+0

写完这个问题后,我认为最好的办法是将它放到根build.gradle文件中,如果它是一个函数的话,并且在gradle.properties中,如果它是nvp属性的话。 –

回答

1

AFAIK不可能在settings.gradle中定义函数,以后可以在子项目中重用。正如你所看到的,hereSettings对象无权访问Project实例(只有ProjectDescriptor这只是一种描述)。另外Project(请参阅here)无权访问Settings。所以他们不能交换内容。

你可以在根目录Project中定义函数(如在你的评论中)或者将东西移动到stuff.gradle并将它应用到你需要它提供的内容的每一个脚本中。

+1

你可以做2的混合,并把你的功能在stuff.gradle,并将其应用于顶级build.gradle文件中的所有项目? – Klunk

+0

@Klunk它似乎是可行的。 – Opal

+0

是的,证实了我的怀疑。按照您的建议正常工作。 –

相关问题