Landroid

[플러터] pubspec.yaml 정리 본문

카테고리 없음

[플러터] pubspec.yaml 정리

silso 2020. 12. 23. 15:48

플러터로 프로젝트를 생성하면 pubspec.yaml이라는 파일도 같이 생성이 됩니다.

 

프로젝트 생성시 pubspec.yaml

주석이 많은데 잘 보시면 pubspec.yaml을 어떻게 사용하는지 안내하는 내용이 담겨 있습니다.

꽤 자세히 작성되어 있어서 읽어보시면 좋고 물론 보기 불편하니 삭제하셔도 무관합니다.

 

pubspec 속성 종류

name: test
description: A new Flutter application.
publish_to: 'none'
version: 1.0.0+1

environment:
  sdk: ">=2.7.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter
  cupertino_icons: ^1.0.1

dev_dependencies:
  flutter_test:
    sdk: flutter

flutter:
  uses-material-design: true

name

패키지의 이름입니다.
어떤 곳이든 필수적으로 포함시켜야 하는 속성입니다.

description

해당 패키지의 대한 설명을 적는 곳입니다.

개인 패키지일 경우 옵션이지만 패키지를 게시하려면 필수적으로 포함 시켜야합니다.

publish_to

배포할 곳을 지정합니다.

기본 값은 https://pub.dev/이며 none은 패키지로서 배포를 하지 않겠다는 뜻입니다.

version

패키지의 버전을 의미합니다.

기본값은 1.0.0+1

지정 안 할 시 0.0.0

 

environment

Dart SDK 환경을 설정하는 속성입니다.

sdk는 environment의 하위속성으로 sdk 버전을나타냅니다.

 

dependencies

패키지의 의존성을 작성하는 곳입니다.

주로 외부 패키지를 가져다 쓰기 위해 사용됩니다.

 

dev_dependencies

패키지가 사용하는 개발용 의존성을 작성하는 곳입니다.

 

기타 속성들

더보기
  • author / authors : 해당 패키지를 만든 사람을 표기합니다. 이름 <이메일>로 작성.
  • homepage : 해당 패키지의 홈페이지가 있는 경우 적습니다.
  • documentation : 해당 패키지의 문서가 있는 경우 적습니다.
  • dependency_overrides : 임시로 의존성을 오버라이드 해야하는 경우 적습니다.
  • executables : 실행가능한 패키지인 경우 스크립트를 적습니다.

더 자세한 내용은 https://dart.dev/tools/pub/pubspec 에서 확인해 주시길 바랍니다.


사용법

사용하는 방법이야 여러가지 있겠지만 그중에서도 가장 많이 쓰이는 방법들을 설명해 보겠습니다.

1. 외부 패키지 추가

# 일반적인 패키지 추가
dependencies:
  plugin: ^0.1.2
  url_launcher: ^0.4.2

# git
dependencies:
  [package-name]:
    git:
      url: https://github.com/[git-username]/[git-repository-name]

 

2. 이미지, 폰트같은 에셋 추가

flutter:
  uses-material-design: true

   assets:
     - images/a_dot_burr.jpeg
     - images/a_dot_ham.jpeg

   fonts:
     - family: Schyler
       fonts:
         - asset: fonts/Schyler-Regular.ttf
         - asset: fonts/Schyler-Italic.ttf
           style: italic
     - family: Trajan Pro
       fonts:
         - asset: fonts/TrajanPro.ttf
         - asset: fonts/TrajanPro_Bold.ttf
           weight: 700

 

3. 기타 문법

# 주석

# 버전은 최소버전인 0.1.2 이상 0.2.0 미만
dependencies:
  url_launcher: '>=0.1.2 <0.2.0'

# 버전은 0.1.2 이상(캐럿문법)
dependencies:
  collection: '^0.1.2'

Flutter Commands

pub get: pubspec.yaml 에 있는 내용을 다운로드합니다.

pub upgrade: 패키지의 버전을 최신 버전으로 올립니다.

pub outdated: 오래된 패키지 종속성을 식별합니다.

flutter doctor: 실행환경을 체크합니다.

 

기타

더보기
  • pub cache : 추가한 의존성에 대한 캐시와 관련된 작업을 합니다.
  • pub deps : 의존성 그래프를 트리구조로 보여줍니다.
  • pub downgrade : 특정 패키지의 버전을 낮춥니다.
  • pub global : 패키지를 전역으로 사용할 수 있도록 변경합니다.
  • pub publish : 패키지를 배포합니다.
  • pub run : 스크립트를 실행합니다.
  • pub uploader : 패키지 업로더 정보를 수정(추가/제거)합니다.

 

참고

https://medium.com/@changjoopark/%ED%94%8C%EB%9F%AC%ED%84%B0-flutter-%EC%9D%98-pubspec-yaml-ffa40b26296a

 

플러터(Flutter)의 pubspec.yaml

플러터 프로젝트를 새로 만들면 pubspec.yaml 파일을 볼 수 있습니다. Node.js의 package.json과 같은 패키지 의존성 관리 및 프로젝트 정의 등의 역할을 갖습니다.

medium.com

https://flutter-ko.dev/docs/development/packages-and-plugins/using-packages

 

패키지 사용하기

Flutter 앱에서 패키지를 사용하는 방법을 학습합니다.

flutter-ko.dev

https://dart.dev/tools/pub/pubspec

 

The pubspec file

Dart is a platform for building structured apps. It includes a language, a VM, libraries, tools, and compilers to many targets, including JavaScript.

dart.dev

Comments