2016-09-22 2 views
3

20 개 이상의 프레임 워크 종속성이있는 응용 프로그램을 개발 중이며 아직 3.0이 모두 설치된 것은 아닙니다. 그래서 Swift 2.3을 계속 사용하고 싶습니다. 그러나 내 Xcode를 8.0으로 업데이트 한 후에 더 이상 내 앱을 빌드 할 수 없습니다. 다음 오류로 인해 실패합니다.3.0 대신 Swift 2.3을 사용하고 Xcode를 업데이트하고 더 이상 빌드 할 수 없습니다.

“Use Legacy Swift Language Version” (SWIFT_VERSION) is required to be configured correctly for targets which use Swift. Use the [Edit > Convert > To Current Swift Syntax…] menu to choose a Swift version or use the Build Settings editor to configure the build setting directly. 

전체 프로젝트를 아직 3.0으로 변환하고 싶지 않습니다.

제 질문은 어떻게 Xcode 8.0을 업데이트 한 후에도 동일하게 유지합니까?

+0

나는 이미 당신과 비슷한 질문에 답했습니다 : http://stackoverflow.com/questions/39485577/alamofire-not-be-code-signed-because-its-settings-dont-specify-a-development/39485655 # 39485655 프레임 워크를 조정할 때이 도구를 사용할 수 있어야합니다. – tech4242

+0

다음을 참조하십시오. http://stackoverflow.com/questions/38446097/xcode-8-beta-3-use-legacy-swift-issue –

답변

4

Swift 2.3을 사용하려면 Build Settings -> Use Legacy Swift Language Version -> YES으로 가야합니다.이를 달성하는 데 도움이됩니다. 응용 프로그램을 빌드 한 후 사소한 구문 문제가 발생합니다. 조정 후 (열심히) 평소와 같이 진행합니다.

+0

많은 문제가 있습니다. 지금은 도서관과 함께, 그들 중 일부는 사소한 있지만 그들 중 일부를 해결하는 방법을 모르겠다. 더 좋은 방법이 있습니까? –

+0

소스 카운트 롤을 사용하는 경우 libs를 업데이트하지 않은 커밋으로 롤백하십시오. 현재 libs를 업데이트 한 경우 일부는 신속한 3.0 구문을 준수하도록 수정되므로이 경우 빌드 중에, 정리 후 오류가 발생합니다 당신이 구축해야하는 2.3의 커밋은 이렇게해야합니다 : 최신의 신속한 구문으로 변환 - 나중에 Libs를 업데이트하지 마십시오. – C0mrade

+0

하지만 변환하면 3.0이되고 싶지 않습니다. 그렇습니까? –

0

https://swift.org/migration-guide/ 이상의 섹션 카르타고/코코아 팟 프로젝트 사용을 읽으십시오.

선택할 수 있습니다. Xcode 작업 영역에 프로젝트의 소스 코드를 포함하십시오. 이것은 Swift 2.3에 모든 코드를 유지하고 Swift 3.0이 준비되지 않은 포드로 참조되는 모든 또는 일부 외부 프레임 워크의 스냅 샷을 만드는 것을 의미합니다.

관련 문제