티스토리 뷰
.podspec 파일 정보 넣기
CocoaPod Create Library 하면 .podspec
파일이 생성됩니다.
우선 .podspec
파일을 편집창에서 오픈 합니다.
[.podspec 파일]
#
# Be sure to run `pod lib lint SamplePods.podspec' to ensure this is a
# valid spec before submitting.
#
# Any lines starting with a # are optional, but their use is encouraged
# To learn more about a Podspec see https://guides.cocoapods.org/syntax/podspec.html
#
Pod::Spec.new do |s|
s.name = 'SamplePods' //[Pods 이름]
s.version = '0.1.0' //[Pods 버전, github 등록 시 tag 버전이 됩니다.]
s.summary = 'This is my First Upload SamplePods.' //[pods 간략 설명입니다.]
# This description is used to generate tags and improve search results.
# * Think: What does it do? Why did you write it? What is the focus?
# * Try to keep it short, snappy and to the point.
# * Write the description between the DESC delimiters below.
# * Finally, don't worry about the indent, CocoaPods strips it!
# s.description = <<-DESC
#TODO: Add long description of the pod here.
# DESC
s.homepage = 'https://github.com/Developer/SamplePods'
//[pods 을 설명할 홈페이지]
# s.screenshots = 'www.example.com/screenshots_1', 'www.example.com/screenshots_2'
//[pods 스크린샷, 나중에 등록 가능하므로 생략]
s.license = { :type => 'MIT', :file => 'LICENSE' }
s.author = { 'Developer' => 'developer@mail.com' }
//[pods 저자 => 이메일]
s.source = { :git => 'https://github.com/FaithDeveloper/SamplePods.git', :tag => s.version.to_s }
//[pods 등록한 깃허브 주소]
# s.social_media_url = 'https://twitter.com/<TWITTER_USERNAME>'
s.ios.deployment_target = '8.0'
//[pods 가 지원하는 타겟 버전]
s.source_files = 'SamplePods/Classes/**/*'
//[pods 파일 위치]
# s.resource_bundles = {
# 'SamplePods' => ['SamplePods/Assets/*.png']
# }
# s.public_header_files = 'Pod/Classes/**/*.h'
# s.frameworks = 'UIKit', 'MapKit'
# s.dependency 'AFNetworking', '~> 2.3'
end
주석으로 표시한 .podspec
필요한 정보를 입력합니다. 만약 github 등록을 만약 안했을 경우 등록한 다음에 내용을 업데이트 해주세요. github 주소는 필수 항목입니다.
참고주석(//) 으로 표시한 것은 이해를 돕기위해 넣은 부분이고 등록 시에는 주석을 제거해주세요.
CocoaPods에 등록할 프로젝트 github 업로드하기
CocoaPods에 등록하려는 프로젝트(위에 작성한 .podspec 을 보유하고 있는 프로젝트)를 github에 업로드 합니다.
업로드 하는 방법
git 초기화 합니다.
$ git init
프로젝트를 git 에 add 합니다.
$ git add --all
git 커밋을 합니다.
$ git commit -m "등록할 메세지"
[.podspec] 에 입력 한
s.version = '0.1.0'
값을git tag
에 포함합니다.git tag 0.1.0
현재 로컬 git과 원격으로 등록한
저장소(Repository)
와 연결해야합니다. 만약 연결할저장소(Repository)
을 생성하지 않았다면 github에서저장소(Repository)
생성합니다.현재 로컬 git과 원격으로 등록한
저장소(Repository)
와 연결 합니다.$ git remote add origin [github 주소]
ex)
$ git remote add origin https://github.com/FaithDeveloper/SamplePods.gitgit 에 로컬에 저장된 것을 push 합니다.
git push -u origin master --tags
CocoaPods Trunk 에 업로드 하기
GitHub 업로드까지 한다면 마지막 단계은 Trunk에 업로드 해야합니다. 우선 업로드 할 프로젝트 위치로 Terminal로 이동합니다.
CocoaPods Trunk 등록
CocoaPods Trunk 등록 전 이메일
인증을 먼저 받아야합니다. 터미널에 CocoaPods Trunk 등록을 시도합니다.
pod trunk register [이메일] [등록자]
pod trunk register
시도 시 기입한 이메일로 확인 메일이 넘어옵니다. 이메일에 함께 넘어온 link
을 클릭 합니다.
CocoaPods Trunk 등록 준비가 완료된 상태입니다. 이제 실질적으로 Trunk 업로드
하겠습니다.
CocoaPods Push
CocoaPods Push 하는 방법은 간단합니다. pod push 명령어만 입력하면됩니다.
$ pod trunk push [.podspec 파일(확장자 포함)]
ex)$ pod trunk push SamplePods.podspec
시간이 걸리지만 문제가 없다면 성공 메세지를 확인할 수 있습니다.
CocoaPods Push 시 에러 대응
프로그램으로 첫 시도하면 항상 실패를 만나게 되는거 같습니다. 저 또한 여러 이슈를 만났습니다. 그 중 대표적인 2가지를 소개하려고 합니다.
SIMCTL ERROR
xcode
에 Command Line Tools
가 등록 되지 않아서 나오는 이슈입니다.
해결방법은 xcode
을 실행하여 Preferences
> Locations
로 진입합니다. 그 후 Command Line Tools
을 설정해 줍니다.
SWIFT_VERSION ERROR
pod trunk push 할 때에 Swift Version이 명시되어 있지 않아서 나오는 이슈 입니다.
해결방법은 pod trunk push 뒤에 스위프트 버전을 넣어주면 됩니다.
$ pod trunk push [.podspec 파일(확장자 포함)] --swift-version=[Swift 버전]
ex)$ pod trunk push SamplePods.podspec --swift-version=4.1
정리
CocoaPod 에 Library 등록 방법을 공유하였습니다.
자신만의 라이브러리를 만들면서 업무의 효율성을 기여하는데 기대합니다.
https://www.youtube.com/watch?v=TcSqF_vnvD0&t=3s
'프로그래밍 > iOS' 카테고리의 다른 글
애플 앱스토어 다운로드 배지 받는 방법 (0) | 2018.07.12 |
---|---|
SafeArea Source Code 로 영역 값 가져오기 (0) | 2018.07.06 |
CocoaPod 에 Library 등록 방법 - Local Pod Create (2) | 2018.07.02 |
SandBox 계정 생성 (0) | 2018.06.30 |
[SWIFT] New File Template 만들기 (0) | 2018.06.10 |
- 미션차이나센터
- push
- Android
- 고시문헬퍼
- 임용고시
- Kotlin
- issue
- swift
- MCC
- missioon
- 알고리즘
- view
- 스코어헬퍼
- 코틀린
- 고시문
- IOS
- DI
- RXjava
- 선교
- 점수판
- 패턴
- java
- 안드로이드
- Android Studio
- missionchina
- flutter
- 디자인패턴
- 탁구
- IT
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |