Shell脚本调用错误 - 已删除的Fabric框架仍在项目中

时间:2015-05-26 02:04:28

标签: objective-c shell compiler-errors crashlytics twitter-fabric

我之前手动(不是通过Cocoapods)将Fabric / Crashlytics框架添加到我的项目中,然后手动删除。这个错误出现在编译时:

/Users/myUserName/Library/Developer/Xcode/DerivedData/ProjectName-hgnmlcwlcxdbmqdzjjegfjbdmxsy/Build/Intermediates/ProjectName.build/Debug-iphonesimulator/ProjectName.build/Script-800A33631A8B53890076A7E8.sh: line 2: ./Fabric.framework/run: No such file or directory

我在路径中找到.sh文件并尝试删除它,但每次运行项目时都会自动生成该文件:

enter image description here

请帮助我解决这个小时的问题...

如果需要,这是完整的错误消息:dropbox link

3 个答案:

答案 0 :(得分:4)

这仍然发生在

[Crashlytics] Version 3.7.0 (102)

您必须更改脚本

的文件权限

chmod 755 ./YourApp/SDK/Fabric/Fabric.framework/run

和可执行文件

chmod 755 /YourApp/SDK/Fabric/Fabric.framework/uploadDSYM

答案 1 :(得分:0)

如果脚本需要执行(我猜你自己试图删除它)。您可以随时尝试此解决方法:

$ script="/Users/myUserName/Library/Developer/Xcode/DerivedData/ProjectName-hgnmlcwlcxdbmqdzjjegfjbdmxsy/Build/Intermediates/ProjectName.build/Debug-iphonesimulator/ProjectName.build/Script-800A33631A8B53890076A7E8.sh"
$ awk 'NR==2 { print "exit 0;" } { print }' "$script" > .tmp && mv .tmp "$script"

在脚本的第一行和第二行之间添加一个退出。如果文件重新生成,您还可以通过更改权限来解决此问题:

$ sudo chmod 111 "$script"

这样可以防止文件被覆盖或重新创建。

答案 2 :(得分:-1)

希望这会有所帮助:

步骤:1:打开你的路径(/ Users / myUserName / Library / Developer / Xcode / DerivedData / ProjectName-hgnmlcwlcxdbmq dzjjegfjbdmxsy / Build / Intermediates / ProjectName.build / Debug-iphonesimulator / Projec tName.build/Script-800A33631A8B53890076A7E8.sh),其中从文件夹中找到文件夹

步骤2:打开“Script-800A33631A8B53890076A7E8.sh”文件

步骤:3:修改.sh文件,如下所示

#!/bin/sh 
 exit 0; chmod 111 //add this after building has started and save

./Fabric.framework/run <FABRIC API KEY> <FABRIC API SECRET>