这是来自:How/Can I include secondary files into a file during gradle's expand/copy?的后续
如果在文件夹'templates‘中,我有两个文件,Master.xml和Child.xml,在Master.xml中,我有下面这一行:
${new File("$DESTDIR/templates/Child.xml").getText()}Child.xml会处理其令牌,并包含在结果Master.xml中。这个很好用。
但是,如果我将Child.xml放在不同的文件夹中,甚至是子文件夹:
${new File("$DESTDIR/templates/include/Child.xml").getText()}然后processResources失败,抱怨它找不到孩子。
摘要:${....getText()}适用于同一文件夹中的文件,但不适用于不同文件夹。
对如何克服这个问题有什么建议吗?
谢谢你的帮助!
发布于 2017-03-09 05:06:31
只有靠运气,我才找到了解决办法。潜在的问题是文件夹和文件的拾取顺序。
最初,我认为我可以通过使用"_1_ProcessFirst“、"_2_ProcessSecond”等感知到的排序顺序来控制文件夹,但这种隐含的顺序被完全忽略了。我最终开始使用A_...还有Z_……等等,这些都很好用。
我不知道这是不是正确的解决方案,或者使用'include‘是首选。我没有做任何“包含”尝试的工作。
下划线是否被忽略或特殊处理?从理论上讲,_1_XXX应该是有效的。
我希望这能帮助其他人。
https://stackoverflow.com/questions/42636959
复制相似问题