[swift] 사용중인 Swift 버전을 어떻게 확인합니까?

방금 Xcode에서 새로운 Swift 프로젝트를 만들었습니다. 사용중인 Swift의 버전이 궁금합니다.

Xcode 또는 터미널에서 프로젝트 내에서 사용중인 Swift 버전을 어떻게 확인할 수 있습니까?



답변

프로젝트 빌드 설정에는 Swift Language Version에 대한 정보를 키-값 형식으로 저장하는 ‘Swift Compiler-Languages’블록이 있습니다. Xcode 및 활성 버전에 사용할 수있는 (지원되는) Swift 언어 버전도 체크 표시로 표시합니다.

프로젝트 ► (프로젝트 대상 선택) ► 빌드 설정 ► (검색 막대에 ‘swift_version’을 입력하십시오.) Swift Compiler Language ► Swift Language Version ► 언어 목록을 클릭하여 엽니 다 (그리고 목록 중 하나에 체크 표시가 나타납니다) -항목, 현재 빠른 버전이 될 것입니다).

이해하기 쉽게이 스냅 샷을보십시오.

설명 된 영역이 강조 표시된 xcode


프로그래밍 방식으로 다음 코드를 사용하면 프로젝트에서 지원하는 Swift 버전을 찾을 수 있습니다.

#if swift(>=5.2)
print("Hello, Swift 5.2")

#elseif swift(>=5.1)
print("Hello, Swift 5.1")

#elseif swift(>=5.0)
print("Hello, Swift 5.0")

#elseif swift(>=4.2)
print("Hello, Swift 4.2")

#elseif swift(>=4.1)
print("Hello, Swift 4.1")

#elseif swift(>=4.0)
print("Hello, Swift 4.0")

#elseif swift(>=3.2)
print("Hello, Swift 3.2")

#elseif swift(>=3.0)
print("Hello, Swift 3.0")

#elseif swift(>=2.2)
print("Hello, Swift 2.2")

#elseif swift(>=2.1)
print("Hello, Swift 2.1")

#elseif swift(>=2.0)
print("Hello, Swift 2.0")

#elseif swift(>=1.2)
print("Hello, Swift 1.2")

#elseif swift(>=1.1)
print("Hello, Swift 1.1")

#elseif swift(>=1.0)
print("Hello, Swift 1.0")

#endif

다음은 Playground를 사용한 결과입니다 ( Xcode 11.x 사용 ).

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


답변

내가하는 일은 터미널에서 말합니다 :

$ xcrun swift -version

Xcode 6.3.2의 출력은 다음과 같습니다.

Apple Swift version 1.2 (swiftlang-602.0.53.1 clang-602.0.53)

물론 그것은 xcrunXcode 사본을 올바르게 가리키고 있다고 가정 합니다. 나처럼 Xcode의 여러 버전을 저글링하는 경우 걱정할 수 있습니다! 그것이 맞는지 확인하려면

$ xcrun --find swift

Xcode의 경로를 살펴보십시오. 예를 들면 다음과 같습니다.

/Applications/Xcode.app/...

그것이 당신의 Xcode라면, 출력 -version은 정확합니다. 을 다시 지정해야하는 경우 xcrunXcode의 위치 환경 설정 패널에있는 명령 행 도구 팝업 메뉴를 사용하십시오.


답변

터미널을 열고 다음을 작성하십시오.

swift -version


답변

Xcode 8.3부터는 대상이 사용하는 신속한 버전의 가치 Build Settings가있는 열쇠 Swift Language Version가 있습니다.

구형 Xcode의 경우이 솔루션을 사용하려면 터미널을 열고 다음 명령을 입력하십시오.

사례 1 : Xcode 앱을 하나만 설치했습니다

swift -version

사례 2 : 여러 Xcode 앱을 설치했습니다

  • 스위치 active developer directory( 빠른 버전을 확인하려는 응용 프로그램 디렉토리 Xcode_7.3.app의 Xcode 앱 파일 이름으로 다음 명령을 대체하십시오 )

     sudo xcode-select --switch /Applications/Xcode_7.3.app/Contents/Developer
  • 그때

     swift -version

참고 : Xcode 8에서 swift 3.x를 기본 swift 버전으로 사용하더라도 Xcode 8에서 Xcode 8.2.x까지 swift 2.3을 사용할 수 있습니다. 신속한 2.3을 사용하려면 from 플래그 Use Legacy Swift Language Version를 켜면 XCode가 해당 프로젝트 대상에 Swift 2.3을 사용합니다.YESBuild Setting


답변

Xcode가 사용하는 Swift 버전을보고 선택할 수 있습니다.

대상 -> 빌드 설정 -> Swift Language Version :

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

Xcode 8.3 및 Xcode 9에서 사용할 수 있습니다 (이전 버전은 확인하지 않았습니다)


답변

이 레딧 게시물이 도움이되었습니다 :
https://www.reddit.com/r/swift/comments/4o8atc/xcode_8_which_swift/d4anpet

Xcode 8은 Swift 3.0을 기본값으로 사용합니다. 그러나 Swift 2.3을 켤 수 있습니다. 프로젝트의 빌드 설정으로 이동하여 ‘레거시 스위프트 언어 버전 사용’을 예로 설정하십시오.

좋은 오래된 레딧 🙂


답변

시스템에 설치된 기본 버전의 swift를 보려면 명령 행에서 다음을 입력하십시오.

swift --version

Apple Swift 버전 4.1.2 (swiftlang-902.0.54 clang-902.0.39.2)

대상 : x86_64-apple-darwin17.6.0

이것은 설치 한 Xcode의 앱 스토어 버전에 포함 된 버전 일 가능성이 높습니다 (변경하지 않은 경우).

Xcode의 특정 버전 (예 : 베타)에서 사용중인 Swift의 실제 버전을 확인하려면 명령 행에서 Xcode 번들 내에서 빠른 바이너리를 호출하고 매개 변수 –version을 전달하십시오.

/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift --version

Apple Swift 버전 4.2 (swiftlang-1000.0.16.7 clang-1000.10.25.3)

대상 : x86_64-apple-darwin17.6.0