Bugly 自动上传脚本在xcode10上报 zip error: Nothing to do! 错误的解决方法

先说解决方法:

在脚本的196行,也就是 “ for dsymFile in $(find "$DSYM_FOLDER" -name '*.dSYM'); do ” 这行代码之前加入“sleep 2s”命令,

也就是 


            #延时两秒后再执行zip操作

            sleep 2s

            #

            for dsymFile in $(find "$DSYM_FOLDER" -name '*.dSYM'); do

            RET="T"

            echo "Found dSYM file: $dsymFile"



其目的就是为了使 “zip -r -j $DSYM_SYMBOL_ZIP_FILE $dsymFile -x *.plist” 这句命令延后2秒再执行。

Bugly提供了 使用脚本自动配置直接上传dSYM文件 的功能,但是在xcode10时,发现Bugly网站上的“符号表管理”页面没有对应的dSYM文件,检查xcode的编译时脚本输出,发现以下错误提示:

zip error: Nothing to do! (..........)

Error: Failed to upload the zip archive file.

FAILTURE - dSYM upload complete.

Failed to upload the dSYM

以上的错误关键都在于第一个错误zip error: Nothing to do!。因为zip没有压缩成功,所以找不到要上传的 *.dSYM.zip而导致上传符号表失败。

zip error: Nothing to do! 这句话的意思是没有要压缩的文件,没做任何事。

经不断的测试及猜测,认为可能是执行zip命令时,dSYM符号表文件是还没有生成的,所以没有文件能压缩。简单粗暴的在zip前加了个2s延时的命令,不再报错,成功上传Bugly。

但这种方式毕竟是粗暴的,就像在iOS的代码里面不知道什么时候刷新界面就随便加了个延时函数,是不怎么可靠的。不过起码解决了我的燃眉之急。

你可能感兴趣的:(Bugly 自动上传脚本在xcode10上报 zip error: Nothing to do! 错误的解决方法)