[ios] Xcode를 사용하여 “No such module”오류가 발생하지만 프레임 워크가 있습니다.

현재 Swift로 코딩 중이며 오류가 발생했습니다.

그러한 모듈이 없습니다

그러나 모듈이 내 프로젝트에 있고 “링크 된 프레임 워크 및 라이브러리”와 “내장 바이너리”에 선언되어 있기 때문에 이해가되지 않습니다.

프레임 워크는 Objective-C에 있으므로 브리지 헤더를 작성했습니다.

Xcode가 프레임 워크를 인식하도록하려면 어떻게해야합니까?

에러 모듈

계획

링크 프레임 워크, 라이브러리

헤더 브리지



답변

왜 이런 일이 발생하는지 잘 모르겠지만 문제를 해결하는 한 가지 방법은 빌드 설정 으로 이동하여 문제 의 프레임 워크가 포함 된 폴더 의 프레임 워크 검색 경로 를 정의하는 것입니다. 프레임 워크가 프로젝트 디렉토리에있는 경우 프레임 워크 검색 경로를 $(SRCROOT)로 설정하고 재귀로 설정하십시오.


답변

금요일 오후 또는 오전 1시 이후 인 경우 :

xcodeproj대신 열면 xcworkspace이와 같은 오류가 발생합니다.


답변

하위 프로젝트의 구성 이름이 “부모”프로젝트의 이름과 일치하는지 확인하십시오. 구성 이름이 정확히 대소 문자를 구분하지 않으면 Xcode는 보관 프로세스를 중단하고 “No such module …”오류를 표시합니다.

즉, “AppStore”라는 구성의 “부모”프로젝트가있는 경우 모든 하위 프로젝트에도이 구성 이름이 있어야합니다.

첨부 된 스크린 샷을 참조하십시오.

"부모"프로젝트의 구성 설정

첫 번째 하위 프로젝트의 구성 설정

두 번째 하위 프로젝트의 구성 설정


답변

이 질문에 대한 의견에서 Martin R 의 대답이 왜 그렇게 무시 되는지 잘 모르겠습니다 .

당신은 단순히 시도 있는지 확인 이미 브리지 헤더에 추가 될 때 프레임 워크의 가져 오기를 건너 뜁니다 .

도움이 되었기를 바랍니다


답변

Cocoapods와 Swift 사용하는 것과 같은 문제가있었습니다 . Podfile에서 다음 줄을 보지 못했습니다.

# Uncomment this line if you're using Swift
# use_frameworks!

그래서 내가해야 할 일은 다음과 같이 변경하는 것입니다.

# Uncomment this line if you're using Swift
use_frameworks!

… 그리고 그것은 효과가 있었다 🙂


답변

이 스크린 샷을 빌드 설정과 비교하십시오. 이 작동 할 수 있습니다. 프레임 워크 검색 경로로 이동하십시오.

여기에 이미지 설명을 입력하십시오


답변

이 문제도 발생했습니다. 나를위한 수정은 두 프로젝트 사이의 아카이브 구성표가 일치하지 않았다는 것입니다. 프레임 워크 프로젝트와 앱 프로젝트가있는 xcworkspace가 있습니다. 문제는 내 앱의 보관 구성표에서 프레임 워크가 보관 구성표에 사용하는 것과 다른 빌드 구성을 사용하고 있다는 것입니다. 빌드 구성을 모두 릴리스로 설정했으며 문제가 해결되었습니다.