library not found for -ljpush-ios-3.2.1错误

很多人在更新pod后报 library not found for -ljpush-ios-3.2.1(举例)错误,这其实是包含版本号类型错误。

究其原因:使用了版本号做库名字,pod升级后 Podfile.lock中版本号和项目中Build Settings 中版本号不一致导致 

如图:Build Settings 中版本号

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

如图: Podfile.lock

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

解决办法:

一、将Build Settings中版本号变的和Podfile.lock中一致

这样的缺点是更新后大家都需要改,尤其是团队开发时并不方便,并且只要更新就有可能有问题,导致你的小伙伴可能要不断更新pod,一般大家对这个是比较反感的,尤其是网络不佳的时候

二、在Podfile中将版本号固定,同时如果该库内部有依赖库(例如JPush内部依赖JCore)还需在外部将内部库指定一个固定版本,这样就不会再更新pod时报library not found for -ljpush-ios-3.2.1之类的错误

如图:Podfile

 

 

 

 

如图:Podfile.lock

 

posted @ 2019-09-06 15:07  小菜看代码  阅读(373)  评论(0编辑  收藏  举报