Swift Academy · 강의

SPM으로 바이너리 패키징하기

실행 파일 패키지를 초기화하고, product 를 설정하고, 의존성을 추가한 다음, 공유할 수 있는 .build/release 의 릴리스 바이너리를 생성합니다.

레슨 3/38개 단계

SPM으로 바이너리 패키징하기은(는) CoddyKit의 무료 Swift Academy 강의입니다. 이것은 3개 중 3번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Swift Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Swift Academy 강의에는 총 3개의 강의가 포함되어 있습니다.

SwiftPM 실행 파일을 사용하는 이유

SwiftPM으로 배포할 수 있는 실행 파일을 빌드할 수 있습니다.

  • 실행 파일 패키지 초기화
  • 제품과 타깃 정의
  • 종속성 추가(시맨틱 버전)
  • 릴리스 빌드 후 바이너리 찾기

초기화 및 빌드 기초

swift package init --type executable을 사용해 기본 구조를 만드십시오. 그런 다음 swift build와 swift run으로 컴파일하고 실행하십시오.

// In your terminal (for reference):
//   swift package init --type executable
// Files created: Package.swift, Sources/<Target>/main.swift, Tests/
// You can then run:
//   swift build
//   swift run

print("SPM exec template ready")

main.swift 구조

실행 파일 타깃은 Sources/<Target>/main.swift에서 시작합니다. CLI 출력은 짧고 명확하게 유지하십시오.

// Sources/App/main.swift (example content)
let args = CommandLine.arguments.dropFirst()
if args.contains("--help") {
    print("app 1.0.0\\nUsage: app [--help] [name]")
} else if let name = args.first {
    print("Hello, \\(name)!")
} else {
    print("Hello from app 1.0.0")
}

Package.swift 핵심 요소

Package.swift의 핵심 요소:

  • 제품: .executable(name:targets:)
  • 타깃: 소스 폴더와 종속성
  • 종속성: 외부 패키지(예: from: "1.2.0"과 같은 시맨틱 버전)

제품 및 종속성 예시

.executable 제품을 선언하고 타깃 종속성을 연결하십시오. 안정성을 위해 외부 패키지는 시맨틱 버전으로 고정하십시오.

// Package.swift (illustrative)
// import PackageDescription
// let package = Package(
//   name: "App",
//   platforms: [.macOS(.v12)],
//   products: [
//     .executable(name: "app", targets: ["App"]),
//   ],
//   dependencies: [
//     // Example: argument parser (replace with real URL in your project)
//     // .package(url: "https://github.com/apple/swift-argument-parser", from: "1.2.0")
//   ],
//   targets: [
//     .executableTarget(
//       name: "App",
//       dependencies: [
//         // .product(name: "ArgumentParser", package: "swift-argument-parser")
//       ]
//     )
//   ]
// )

릴리스 빌드 및 결과물

.build/release/<product>에 있는 파일을 배포하십시오. 기호를 제거하고 배포를 위해 압축하는 것도 고려하십시오.

// Produce an optimized binary:
//   swift build -c release
// Artifact path:
//   .build/release/app   (product name)
//
// Optional strip symbols (platform-specific tool) or zip:
//   # macOS example (illustrative)
//   # strip .build/release/app
//   # zip app-macos.zip .build/release/app

print("Release binary lives in .build/release/")

릴리스 결과물 위치

간단 확인: 릴리스 바이너리는 어디에 있나요?

요약

요약: 실행 파일 패키지를 초기화하고, Package.swift에서 제품을 정의하며, 시맨틱 버전으로 종속성을 추가한 다음 .build/release에서 바이너리를 배포하십시오.

무료로 시작

AI 튜터와 함께 Swift을(를) 배우세요 — 무료

브라우저에서 실제 코드를 작성하고 실행하며, 24/7 AI 튜터로부터 즉각적인 도움을 받고, 웹이나 앱에서 중단한 부분부터 계속 학습하세요.

코스
122
레슨
409

자주 묻는 질문

“SPM으로 바이너리 패키징하기” 강의는 무료인가요?

네 — “SPM으로 바이너리 패키징하기” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Swift Academy 강의 전체를 잠금 해제할 수 있습니다. Swift Academy 강의에는 총 3개의 강의가 포함되어 있습니다.

“SPM으로 바이너리 패키징하기”에서 뭘 배우나요?

실행 파일 패키지를 초기화하고, product 를 설정하고, 의존성을 추가한 다음, 공유할 수 있는 .build/release 의 릴리스 바이너리를 생성합니다. 브라우저에서 직접 실행하는 실습 코드로 Swift Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

Swift Academy을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 Swift Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 3개 중 3번째 강의입니다.

“SPM으로 바이너리 패키징하기” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 Swift Academy 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 Swift Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. Swift 스크립트(swift 셰뱅), 명령줄 도구
  2. C/Obj-C 연동 한눈에 보기(iOS 세부 사항 제외)
  3. SPM으로 바이너리 패키징하기
← Swift Academy(으)로 돌아가기