美文网首页
Cocopods 做自己的库

Cocopods 做自己的库

作者: cj小牛 | 来源:发表于2021-09-09 14:00 被阅读0次

    直接上操作步骤

    1.远程库建立
    • 我先用的平台是coding.net

    • 在coding 上创建一个代码仓库 得到地址

    • 在自己的电脑上打开终端 pod repo add “仓库名字” “远程仓库的地址”(这个地址主要用来存自己库spec文件的)

      JiedeMacBook-Pro:~ jiechen$ pod repo add CJKit https://e.coding.net/jiechenCoding/CJFMBase/FMTest.git
      

    后输入Conding 上的账号和密码,等几秒钟

        JiedeMacBook-Pro:~ jiechen$ pod repo
    
    9A623DCA-0BB2-480A-855F-B18D8D4B9ED4.png

    2 创建自己的库

    在终端

      JiedeMacBook-Pro:CocopadsTest jiechen$ pod lib creat HomeKite
    
    过程中输入

    完成后Xcode 会自动打开一个没有代码的工程
    查看项目结构


    得到的项目结构

    要操作的就是Classes 换成自己的代码

    然后修改podspec文件


    9076C0B9-3018-4180-B5D0-C62AE77B56A6.png 打开文件后要修改 4684FA45-AC2A-4FD9-8BF0-993B76F5979E.png
    1. 描述文件
    2. source 的地址是我在coding 从新建立的一个代码库。的地址
    3. source_fire 是要下载的文件的第地址

    设置好后编译项目确认没有问题。
    后提交代码打本地 git status 查看状态,git add 然后 git commit -m '1.o'
    提交后给代码添加远程代码仓库 git

    JiedeMacBook-Pro:~ jiechen$ pod repo add categoryKit https://e.coding.net/jiechenCoding/CJFMBase/FMTest.git

    将podspec 推送到cocopods服务器
    pd repo push categoryKit categoryKit.podspec --allow-warnings

    成功后使用

        # Uncomment the next line to define a global platform for your project
        source ' https://github.com/CocoaPods/Specs.git'
        platform :ios, '9.0'
    
      target 'TestCocopods' do
      # Comment the next line if you don't want to use dynamic frameworks
     use_frameworks!
    //这样设置才能找得到
     pod 'CategoryKit', :git =>   "https://e.coding.net/jiechenCoding/cjfmtest/CJCategoryKit.git
    end
    
    导入后显示 27881F2C-F917-4F01-A674-DB09907B70A3.png

    结构变了

    从新修修改podspec 文件

    s.subspec 'Frame' do |frame|
    frame.source_files = 'CategoryKit/Classes/Frame/*.{h,m}'
    end

    s.subspec 'Color' do |color|
    color.source_files = 'CategoryKit/Classes/Color/*.{h,m}'
    end

    07F269E3-A1E9-45CE-9627-A2E6A18CB922.png

    因为没有修改库,子修改过了配置文件

    把私有库的spec 放到自己的索引中

    pod repo push CategoryKit CategoryKit.podspec --allow-warnings

    s.source_files = 'CategoryKit/Classes/*/' 要注释掉

    自己建立的库的使用(一定要加地址不然找不到)

    use_frameworks!
    
    //这里放自己库的位置
    source 'https://e.coding.net/jiechenCoding/cjfmtest/CJCategoryKit.git'
    source ' https://github.com/CocoaPods/Specs.git'
    platform :ios, '9.0'
    target 'XMGHomeKit_Example' do
      pod 'XMGHomeKit', :path => '../'
      target 'XMGHomeKit_Tests' do
        inherit! :search_paths
        pod 'CategoryKit', :git =>         "https://e.coding.net/jiechenCoding/cjfmtest/CJCategoryKit.git"// 最好是放在这里
    end
    

    其它库的依赖

        s.dependency 'AFNetworking', '~> 2.3' 依赖的库
    

    然后在本工程中pod install

    图片的处理

    图片放在 3ED563AE-19DB-460A-97E7-FA4E7C6F337E.png

    这里面

    配置图片和xib, storyboard 的显示在.podspec 中

    s.source_files = 'CJHoneKit/Classes/**/*.{h,m}'
    
     s.resource_bundles = {
     'CJHoneKit' => ['CJHoneKit/Assets/*.png','CJHoneKit/Classes/**/*.{xib,storybaord}']
     }
    

    将一个库分开 用户可以根据自己的喜好来选择需要的库

        #  s.source_files = 'CJBseTool/Classes/**/*'
       s.subspec 'Base" do |b|
        b.source_files = 'CJBseTool/Classes/Base/**/*'
        b.dependency 'AFNetworking', '~> 2.3'// 这个模块的依赖
    
       end
        s.subspec 'Category" do |c|
        c.source_files = 'CJBseTool/Classes/Category/**/*'
        end
    
    tupian

    就会看到红色的这一个快

    以后使用的话

    pod 'XMGFBase/Base'
    

    相关文章

      网友评论

          本文标题:Cocopods 做自己的库

          本文链接:https://www.haomeiwen.com/subject/eslmpltx.html