사용 중인 Swift 버전을 확인하려면 어떻게 해야 합니까?
방금 Xcode에 새로운 Swift 프로젝트를 만들었습니다.어떤 버전의 Swift를 사용하고 있는지 궁금합니다.
프로젝트 내에서 사용하고 있는 Swift 버전을 Xcode 또는 터미널에서 어떻게 확인할 수 있습니까?
터미널에서 내가 하는 일은 다음과 같습니다.
$ xcrun swift -version
Xcode 6.3.2의 출력은 다음과 같습니다.
Apple Swift version 1.2 (swiftlang-602.0.53.1 clang-602.0.53)
그 의 '오빠', '오빠'입니다.xcrunXXXX의나처럼 여러 버전의 Xcode를 저글링하고 있다면 그건 걱정거리가 될 거야! , 「 「 」 「 」라고 .
$ xcrun --find swift
Xcode에 대한 경로를 확인합니다.예를 들어 다음과 같습니다.
/Applications/Xcode.app/...
X코드은 다음과 .-version재지정할 가 있는 경우xcrunXcode [ [ Locations ]프명령줄 도구
프로젝트 빌드 설정에는 Swift Language Version에 대한 정보를 키 값 형식으로 저장하는 블록 'Swift 컴파일러 - 언어'가 있습니다.Xcode에서 사용 가능한 모든(지원되는) Swift Language 버전 및 활성 버전도 체크 마크로 표시됩니다.
프로젝트 ( ( Select Your Project Target ) 、 Build Settings ( ( Search bar)swsw ' swift _ version ' 입력)Swift 컴파일러 언어 swiftSwift Language )목록을 클릭하여 엽니다(목록 중 하나에 체크 마크가 표시되어 최신 버전이 됩니다).
이 스냅샷을 보시면 이해하기 쉬우실 수 있습니다.
다음 코드를 사용하면 프로젝트에서 지원되는 Swift 버전을 프로그래밍 방식으로 찾을 수 있습니다.
#if swift(>=5.7)
print("Hello, Swift 5.7")
#elseif swift(>=5.6)
print("Hello, Swift 5.6")
#elseif swift(>=5.5)
print("Hello, Swift 5.5")
#elseif swift(>=5.4)
print("Hello, Swift 5.4")
#elseif swift(>=5.3)
print("Hello, Swift 5.3")
#elseif 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 사용).
터미널을 열고 다음을 기록합니다.
swift -version
8.3 Xcode 8.3 Build Settings가 있다Swift Language Version재빠르다
이전 X코드의 경우 이 솔루션을 사용하여 터미널을 열고 다음 명령을 입력합니다.
케이스 1: Xcode 앱을 1개만 설치했습니다.
swift -version
케이스 2: 여러 Xcode 앱을 설치했습니다.
스위치 위 치 switch
active developer directory(환) (Xcode_7.3.appswift 버전을 체크하는 어플리케이션 디렉토리에서 Xcode 앱 파일 이름을 사용하여 다음 명령을 수행합니다.)sudo xcode-select --switch /Applications/Xcode_7.3.app/Contents/Developer그리고나서
swift -version
메모: Xcode 8에서 Xcode 8.2.x까지 swift 2.3을 사용할 수 있습니다.단, Xcode 8에서는 swift 3.x를 기본 swift 버전으로 사용합니다.swift 2.3을 사용하려면 플래그만 켜면 됩니다.Use Legacy Swift Language Version to 로.YES부에서Build Setting그리고 XCo는 그 프로젝트 목표 목표 목표 목표 목표물을 사용할 것입니다.XCode는 그 프로젝트 타깃으로 Swift 2.3을 사용합니다.
다음에서 어떤 Swift 버전 Xcode를 사용하고 있는지 확인하고 선택할 수 있습니다.
타깃 -> 빌드 설정 -> 스위프트 언어 버전:
이 기능은 Xcode 8.3 및 Xcode 9에서 사용할 수 있습니다(이전 버전은 확인하지 않았습니다).
시스템에 설치된 swift의 기본 버전을 보려면 명령줄에서 다음과 같이 입력합니다.
swift --version
Apple Swift 버전 4.1.2(swiftlang-902.0.54 clang-902.0.39.2)
대상: x86_64-apple-darwin 17.6.0
이 버전은 사용자가 설치한 Xcode 앱스토어 버전에 포함된 버전일 가능성이 높습니다(변경하지 않은 경우).
특정 버전의 Xcode(예를 들어 베타)에서 사용되는 Swift의 실제 버전을 확인하려면 명령줄에서 Xcode 번들 내의 swift binary를 호출하여 파라미터 --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-darwin 17.6.0
이 Reddit 투고는 도움이 되었습니다.https://www.reddit.com/r/swift/comments/4o8atc/xcode_8_which_swift/d4anpet
Xcode 8은 Swift 3.0을 기본값으로 사용합니다.하지만 Swift 2.3을 켤 수 있습니다.프로젝트의 빌드 설정으로 이동하여 '레거시 Swift 언어 버전 사용'을 '예'로 설정하십시오.
구식 레딧 :)
Xcode Version에 기반한 Swift 버전의 빠른 일대일 매핑을 원하는 사용자가 있는 경우:
Xcode 13.4.1 : Swift version 5.6.1
Xcode 13.2 : Swift version 5.5.2
Xcode 12.5 : Swift version 5.4.2
Xcode 12.3 : Swift version 5.3.2
Xcode 12.2 : Swift version 5.3.1
Xcode 11.6 : Swift version 5.2.4
Xcode 11.5 : Swift version 5.2.4
Xcode 11.4 : Swift version 5.2
Xcode 11.3 : Swift version 5.1.3
Xcode 11.2.1 : Swift version 5.1.2
Xcode 11.1 : Swift version 5.1
다른 Xcode 버전에서 설명한 대로 다음 명령을 실행하면 얻을 수 있습니다.
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift --version
/usr/bin/swiftc --version
및 swift 버전 <--> Xcode 버전
터미널에서 명령을 실행할 수도 있습니다.
xcrun swift -version
또는
아래 표를 참조하여 어떤 Xcode가 어떤 버전의 swift language를 사용하고 있는지 확인할 수 있습니다.
Xcode 13.4.1 : Swift version 5.6.1
Xcode 13.3 : Swift version 5.6
Xcode 13.2 : Swift version 5.5.2
Xcode 12.5 : Swift version 5.4.2
Xcode 12.3 : Swift version 5.3.2
Xcode 12.2 : Swift version 5.3.1
Xcode 11.6 : Swift version 5.2.4
Xcode 11.5 : Swift version 5.2.4
Xcode 11.4 : Swift version 5.2
Xcode 11.3 : Swift version 5.1.3
Xcode 11.2.1 : Swift version 5.1.2
Xcode 11.1 : Swift version 5.1
Google Colab의 Swift를 사용하고 있습니다.Colab에서 확인하는 방법은 다음과 같습니다.
!/swift/toolchain/usr/bin/swift --version
는 ★★★★★★★★★★★★★★★★★★.5.0-dev
terminal swift -v의 hi frind 코드 타입
print temporal welcome to Apple Swift 버전 5.2.4 (swiftlang-1103.0.32.9 clang-1103.0.32.53)
특정 버전의 swift 실행 코드를 확인하고 싶다면
#if compiler(>=5.1) //4.2, 3.0, 2.0 replace whatever swft version you wants to check
#endif
프로젝트에서 사용하는 Swift 버전을 Xcode 12를 몇 번 클릭하여 찾는 방법에 대한 답변이 업데이트되었습니다.
- 프로젝트를 클릭합니다(왼쪽 페인의 맨 위 파란색 아이콘).
- [ Build Settings ]([Project]> [ Header ]의 5번째 항목)을 클릭합니다.
- [ Swift Compiler - Language ](Swift 컴파일러 - 언어)까지 스크롤하여 드롭다운을 확인합니다.
입력만 하면swiftSwift 콘솔에 로그인하는 동안 터미널에 있는 명령어가 버전을 표시합니다.(아래와 같습니다)
System-IOSs-MacBook-Air swift
Welcome to Apple Swift version 5.1 (swiftlang-1100.0.270.13 clang-1100.0.33.7).
Type :help for assistance.
보너스 기부금:커스텀 node.js 스크립트를 사용하여 Jazzy 문서에서 사용할 클린 문자열을 추출하고 있습니다.개발 프로세스에서 작업할 수 있는 장소를 찾을 수 있는 경우 이 기능을 사용할 수 있습니다.
Bash 스크립트에서 호출:
#!/bin/bash
swiftversion=$(node SwiftVerSlicer.js "${xcrun swift -version}");
echo $swiftversion
SwiftVerSlicer.js:
// begin script
const inputString = `${process.argv[2]}`
let searchTerm = (inputString.indexOf('(') - 1)//-1 cause whitespace
let version = inputString.slice(0,searchTerm)
console.log(version)
// end script
물론 regex를 사용할 수도 있지만 원하는 대로 사용할 수 있습니다.]
- 프로젝트 선택
- 빌드 설정
- '외국어'를 검색하다
- 이제 프로젝트에서 어떤 swift 버전을 사용하고 있는지 확인할 수 있습니다.
https://i.stack.imgur.com/Ojn3m.png
프로젝트 설정에서 얻을 수 있습니다.
언급URL : https://stackoverflow.com/questions/30790188/how-do-i-see-which-version-of-swift-im-using
'programing' 카테고리의 다른 글
| IValueConverter 인터페이스에서 ConvertBack 메서드는 어떤 용도로 사용됩니까? (0) | 2023.04.14 |
|---|---|
| composer.lock을 버전 제어에 커밋하시겠습니까? (0) | 2023.04.14 |
| iOS에서 프로그램 방식으로 자체 전화 번호 가져오기 (0) | 2023.04.14 |
| 언와인드 세그를 프로그래밍 방식으로 실행하는 방법 (0) | 2023.04.14 |
| WPF에서의 WndProc 메시지 처리 방법 (0) | 2023.04.14 |




