maxfong / MFSIdentifier

iOS App获取唯一标识符方案
MIT License
278 stars 35 forks source link

怎么让自己的私有pod库支持Carthage #8

Closed huakucha closed 6 years ago

huakucha commented 6 years ago

如题:怎么让自己的私有pod库支持Carthage 自己无论是在引用其他的三方库还是自己的私有库 都会发现有些库不支持Carthage 让Carthage的前置条件是什么啊

maxfong commented 6 years ago

@huakucha 配置好工程,push到自己仓库, 配置文件内github换成git,如

git "https://xxx/xxx.git"即可

huakucha commented 6 years ago

你所说的配置文件是Carthage的配置文件吗(Cartfile)

maxfong commented 6 years ago

@huakucha 是的

huakucha commented 6 years ago

文件: github "https://github.com/rentzsch/jrswizzle.git" 命令:carthage update --platform iOS 结果:Dependency "jrswizzle" has no shared framework schemes for any of the platforms: iOS 这种原因是什么

maxfong commented 6 years ago

@huakucha "配置好工程"这句话你研究下 比如:选择 Manager Schemes,勾上shared,这步有做吗?

huakucha commented 6 years ago

明白了 你的构建的MFSIdentifier确实勾上shared 谢谢了...

maxfong commented 6 years ago

@huakucha 配置Carthage时需选择Manager Schemes并对需要编译的Target勾选Shared,否则会出现提示 Dependency "项目名" has no shared framework schemes

是因为Carthage编译基于xcodebuild,-workspace编译时需要-scheme参数 而我们配置.gitignore中排除了xcuserdata git下载的工程(或删掉xcuserdata)后运行xcodebuild -list可以发现不存在Schemes一项 勾选Shared后会在.xcodeproj创建xcshareddata目录,里面保存着.xcscheme

huakucha commented 6 years ago

pod package原理是不是也是基于xcodebuild

maxfong commented 6 years ago

@huakucha 是的