我什至不确定这是否可能,但我会试一试。
Xcode是否有可能(即使用插件)检查每个文件是否包含有效的许可证头,如果没有则停止编译?
提前致谢。
这是完整的设置!请注意,这也会产生 Xcode 错误。:)
#!/bin/bash
searchString=`cat license.txt`
ERROR_COUNT=0
while read file
do
grep -F "${searchString}" $file > /dev/null
if [ $? -ne 0 ]; then
echo -e $file:1: error : No valid License Header found! 1>&2
ERROR_COUNT=1
fi
done < <(find . -type d \( -name "TTTAttributedLabel" -o -name "minizip" -o -name "SSZipArchive" \) -prune -o -type f \( -name "*.m" -o -name "*.h" -o -name "*.pch" \) -print)
exit $ERROR_COUNT
以下是如何设置脚本: Xcode:在每次构建之前运行脚本,直接修改源代码
如何报告 Xcode 中的错误:http: //shazronatadobe.wordpress.com/2010/12/04/xcode-shell-build-phase-reporting-of-errors/
好吧,我不确定这是否是正确的答案,但是您可以在构建阶段添加一个 shell 脚本,该脚本可以检查项目中的文件是否有有效的许可证头(通过 grep+regex)。