[SPM] 03. SPM 직접 등록 및 업데이트
안녕하세요. 물먹고하자 입니다. Swift Package Manager(이하 SPM) 세번째로 직접 SPM 등록 후 사용하는 방법 입니다!
처음하다보니 중간에 실패사례도 있는데, 공유하기 좋을것 같아서 같이 올렸습니다.
바로 시작!
(오늘은 이미지가 많아요)
샘플소스
Xcode > File > New 를 통해 Swift Package 생성!
처음 생성하고나면 기본으로 생성되는 부분 입니다
나머지 부분은 테스트로 사용해볼 프로토콜, Util 성 클래스 생성함.
일단 사용을 위해서 Git에 올림
#. 주의점 : 이미지 처럼 Package.swift 파일이 폴더 내에 들어가 있으면, 다운로드 받은때 오류납니다.
(뒷 부분 수정내용 참조)
삽질 끝에 1.0.1 릴리즈 추가 (1.0.0 은 실패함..ㅋㅋ) 일단 추가
SPM 에서 해당 Git 소스 추가 (Next)
버전도 정상으로 확인! (1.0.1 Next)
....?! 여기서 삽질좀 했는데, 위에서 한번 언급했듯이 Package.swift 파일을 찾지 못해서 나는 오류임.
Git 프로젝트 수정!!
다시 릴리즈 하고 .... (1.1.0 으로 변경함)
다시 다운로드 (1.1.0)
성공!!
SPM에 해당 내용 잘 가져와짐
import 정상
Class는 Public 을 안써놔서 접근 안됨.
다운받은곳에서는 수정이 안되니, 라이브러리 소스로 ㄱㄱ
class -> public class 로 변경
릴리즈 추가 (1.1.1)
그냥 실행하면 최신받아지는건 아니네요
SPM 부분에서 더블클릭해서 해당 버전으로 업데이트
최신 버전 내용 확인!
???? 어?? Class 까지는 접근되는데, 함수는 또 접근이 안되네
싱글턴 사용 방식 틀린것도 아닌데..
Class Func 추가!!
어....??? 뭐지 이것도 접근이 안되나??
마무리
오늘은 작업하면서 생각보다 SPM 등록 및 업데이트는 어렵지 않았는데, 생각지도 못한 싱글턴 객체를 접근하지 못하는 일이 발생해서 당황했습니다. (주된 목적이 싱글턴 객체에 자료 저장 및 Util 성 함수를 중앙에서 통제하려고함) 분명 Alamofire 나 메이져급 라이브러리들은 사용하고 있는걸로 보아 뭔가 빠진 것 같다고 생각되네요.
오늘은 여기까지만 정리하고, 다음번에는 라이브러리 접근가능하게 수정하고, 주의점 등등 알아봐야 할 것 같습니다.
끝!
즐거운 코딩 되세요~
댓글
댓글 쓰기