热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Masonry示例Examples使用cocoapods命令podinstall之后报错处理

Masonry是iOS平台处理AutoLayout的一个替代方案,我们可以通过官方的例子学习它的使用方法。但是官方demo使用cocoapods命令podinstall之后会出现一些问题。1、[!

Masonry是iOS平台处理Auto Layout的一个替代方案,我们可以通过官方的例子学习它的使用方法。但是官方demo使用cocoapods命令pod install之后会出现一些问题。

1、

[!] An error occurred while processing the post-install hook of the Podfile.


undefined method `project' for #

这是因为在cocoapods0.38版本做出了一个改变,需要在Xcode打开Masonry目录中的Podfile文件搜索project改成pods_project。

为了让Podfile文件适配其他同事低版本的cocoapods,因为pod是基于ruby实现的,所以可以将Podfile文件中的

  classy_pods_target = installer.project.targets.find{ |target| target.name == COV_TARGET_NAME }
unless classy_pods_target
raise ::Pod::Informative, "Failed to find '" < end

改为

if defined? installer.project
classy_pods_target = installer.project.targets.find{ |target| target.name == COV_TARGET_NAME }
unless classy_pods_target
raise ::Pod::Informative, "Failed to find '" < end
end

if defined? installer.pods_project
classy_pods_target = installer.pods_project.targets.find{ |target| target.name == COV_TARGET_NAME }
unless classy_pods_target
raise ::Pod::Informative, "Failed to find '" < end
end

这样,无论在哪个版本的pods上都可以得到正确的配置。

2、接下来会遇到另外一个问题。

[!] An error occurred while processing the post-install hook of the Podfile.


[!] Failed to find 'Pods-MasonryTestsLoader-Masonry' target

解决方法为,在上面的Podfile文件中将

COV_TARGET_NAME = "Pods-MasonryTestsLoader-Masonry"

改为

COV_TARGET_NAME = "Pods-MasonryTestsLoader"

即删掉name尾部的 -Masonry。

好了,到这里应该就可以正常进行了。


当然,还有一种更为简单直接的解决方法,就是将Podfile文件中

post_install do |installer|

后面的代码删除掉就行了。


参考链接:https://github.com/CocoaPods/CocoaPods/issues/3747

http://huang.sh/2015/09/cocoapods-0-38导致的undefined-method-project-for/

https://github.com/SnapKit/Masonry/blob/master/Podfile

https://github.com/SnapKit/Masonry/issues/294



推荐阅读
author-avatar
蜡笔小新11953150
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有