我正在使用gradle来构建一个Android应用程序。我正在将几个文件和文件夹复制到assets文件夹。我现在遇到了问题,一些文件的文件名可能太长,文件夹也是如此(aapt无法处理超过100个字符的文件名)。
因此我在复制操作期间重命名文件,如下所示:
copy {
from('A')
into('B')
rename ('too-long-filename', 'shorter-filename')
rename ('too-long-directoryname', 'shorter-directoryname')
}
但是,这适用于文件,但目录失败。是否有特殊命令在使用gradle复制期间实现重命名?
错误说:
错误代码: 1 输出: /home/curiosity/AndroidStudioProjects/App/build/..way太长的目录名../:错误:目录名无效,无法添加。
答案 0 :(得分:0)
您可以尝试访问FileTree,但是您必须保存目录,在遍历时无法更改这些目录。如果你只想缩短名称,可能可以使用groovy子字符串表示法longname [0 ..- 10]
类似的东西:
def dirs = []
fileTree("./longdirectoryname").visit { FileVisitDetails details ->
if (!details.isDirectory()) {
// rename
} else {
dirs.add(details.file)
}
}
dirs.each { // rename directories here }