Создание CocoaPod

Уже 2 дня пытаюсь сделать cocoapod в swift с помощью Xcode 7.1.1

Проблема в том, что когда я устанавливаю модуль с помощью pod install, мои файлы модуля интегрируются с проектом, но я не могу использовать свои файлы модуля. Ссылка отсутствует. Проект не распознает мои файлы pod.

Учебники, которые я пробовал:

  1. https://guides.cocoapods.org/making/using-pod-lib-create
  2. http://code.tutsplus.com/tutorials/creating-your-first-cocoapod--cms-24332
  3. http://useyourloaf.com/blog/creating-a-cocoapod.html

И pod lib lint, и pod spec lint проходят проверку. Также я преуспел в pod trunk push

Вы можете получить модуль в своем проекте, используя

pod 'WARDoorView', '~> 0.1.2'

Вы можете попробовать стручок, используя

pod try WARDoorView

Если вы загружаете репозиторий, пример проекта имеет ошибку компиляции в ViewController.swift:

Использование необъявленного типа WARDoorView.

Но я вижу WARDoorView.swift под pods

Репозиторий находится по адресу
https://github.com/rishi420/WARDoorView.


person Warif Akhand Rishi    schedule 06.12.2015    source источник


Ответы (2)


Боже ... через 3 дня я могу найти проблему.

Мне пришлось сделать свой класс public и любую функцию, которую я хочу вызывать извне, public.

public class WARDoorView: UIView { ...

public func doorOpen(angle: Double ...

public func doorClose(duration: NSTimeInterval ...

Я думал, что public по умолчанию. Я был неправ.

Новый модуль, использующий

pod 'WARDoorView', '~> 1.0.2'
person Warif Akhand Rishi    schedule 07.12.2015

Я загрузил ваш проект и открыл файл 'WARDoorView.xcworkspace', однако, как вы упомянули, я не получил никаких ошибок при сборке и запуске. Закрыть дверь также работает, как и ожидалось. Если вы используете файл 'WARDoorView.xcodeproj', вы получите ошибку, потому что после интеграции модуля нам нужно использовать файл рабочей области.

person Anni S    schedule 06.12.2015
comment
Я пробовал много вещей для теста. Я вручную добавил папку WARDoorView, чтобы проверить проблему связывания. Предполагается, что эта папка исходит из файла pod. Пожалуйста, удалите папку и проверьте снова. Спасибо за попытку. - person Warif Akhand Rishi; 06.12.2015
comment
я сам удалил папку, добавленную вручную, и обновил репозиторий git. вы можете загрузить снова, чтобы проверить - person Warif Akhand Rishi; 06.12.2015