corykim0829 / SearchBooksApp

Searching IT books using api.itbook.store
0 stars 0 forks source link

Realm Package 추가 이슈 #2

Closed corykim0829 closed 3 months ago

corykim0829 commented 3 months ago

Tuist Package.swift를 통하여 Realm dependencies를 설정해주었을 때, 정상적으로 RealmSwift를 import 하지 못하고 빌드가 되지 않는 이슈

corykim0829 commented 3 months ago

Realm만 product에 추가하면

image

위와 같이 Realm을 의존하지만, RealmSwift는 의존되지 않는 이슈가 발생.


따라서 PackageSettings의 productTypes에 Realm, RealSwift 모두 선언해주고

#if TUIST
import ProjectDescription

let packageSettings = PackageSettings(
  productTypes: [
    "SwiftUIIntrospect": .framework,
    "Realm": .framework,
    "RealmSwift": .framework
  ]
)
#endif

Peoject.swift에서 해당 두 프레임워크를 사용할 곳에 모두 external로 아래와 같이 의존하면

      dependencies: [
        .external(name: "Realm"),
        .external(name: "RealmSwift")
      ]

다음과 같이 조금 어색한 그래프를 확인할 수 있는데, 의존성만 본다면 RealmSwift만 의존해도 되는거 아니냐 싶었지만, build가 되는가 싶지만 오류가 발생한다. (Realm만 의존했을 때는 아예 RealmSwift를 import하지 못한 것보다는 진전이 있었던 것 처럼 느껴졌었다.) 이래야 코드가 정상적으로 빌드가 된다. image