안녕하세요 오늘은 제가 자주쓰는 익스텐션을 저장하고 개인프로젝트에 활용하려고 SPM을 만들어 보게 되었습니다
그럼 빠르게! 살펴보겠습니다
### 1. Package 생성
먼저 xcode를 실행하고
File -> New -> Package 를 선택해줍니다
### 2. Package 이름 정하기
이제 패키지 이름을 정해야하는데 이름은 다른 라이브러리와 겹치지 않게 미리 검색해보시고 정하시는걸 추천드립니다
### 3. 패키지 파일 정리 및 Package.swift 수정
저는 패키지 테스트코드는 작성할 생각이없어서 Test관련된 부분은 모두 정리했습니다
### 4. 정리된 Package.swift 사진
지원하는 플랫폼과 버전을 명시해 줍니다.
폴더를 Foundation과 UIKit 두가지로 구분해서 추가해 두었습니다.(단순히 폴더만 구분해주면 분리됩니다)
이렇게하면 UIKit, Foundation 둘중에 하나만 골라서 추가할수 있습니다
### 5. 깃허브에 업로드
깃허브 로그인이 안되어있다면 토큰을 생성해서 연결해주시고 진행해야 합니다. 위와같이 나오고 Create를 누르면 깃허브에 레포가 생성됩니다
### 6. 커밋 메시지 작성 및 푸시
순서대로 탭에가셔서 Uncommitted Changes를 누르시고 다음사진에 오른쪽 위에있는 Stage All을 누르시고 Commit Message 작성후에 3번째 사진 오른쪽 위에있는 Push를 누르시면 작성한 코드가 모두 업로드 됩니다.
### 7. 버전관리
SPM의 버전관리는 Tags로 이루어지기 때문에 업로드를 완료하시고 꼭 Tag를 등록해주셔야합니다.
### 8. 실제 프로젝트 적용확인
새로운 프로젝트를 생성하고 다음의 사진과같이 추가과정을 진행합니다
주의하실점은 3번째 사진에서 패키지를 적용하실 타겟을 지정해주셔야합니다. 기본값은 None이기 때문에 꼭 선택해주셔야 합니다.
### 9. 동작확인
import 패키지 네임을 써주신후 코드가 잘 불러와지는지 확인하시면 됩니다.
만약 코드가 잘 동작하지 않는다면 접근제한자를 public 또는 open으로 잘 설정하셨는지 확인해 보시길 바랍니다
'IOS > iOS' 카테고리의 다른 글
Tuist 프로젝트 Xcode Cloud 적용(feat. Environment Variable, Tuist, cocoaPods, dSYM upload, App Distribution) (1) | 2023.06.06 |
---|---|
[iOS] Xcode 13 UIButton (0) | 2021.10.05 |
[iOS] URL Scheme 다루기, 호출 메서드 2개 처리 방법 (0) | 2021.09.27 |
[iOS]Memory Leak cases example in Swift (0) | 2021.08.29 |
[iOS]협업을 잘하려면 ...? SwiftLint 적용방법 (3) | 2021.08.25 |