[Flutter]Flutter 2.0 우당탕탕 마이그레이션 해보기-(1)FVM

3월에 flutter 2.0 발표가 나고 현재 2.2 버전까지 출시되었다.

처음에 나왔을 때는 사용하던 라이브러리들이 null-safety를 지원하지 않고, 커뮤니티에서도 에러가 좀 있는듯 보여 바로 업그레이드 하지는 않고, 최근에 고도화 프로젝트를 진행하면서 같이 마이그레이션을 진행하기로 하였다.

Null Point Exception을 워낙 많이 겪어서, null-safety가 꼭 필요하다고 느꼈다.

나같은 경우엔 뭔가를 한다! 하면 삽질을 정말 많이 하는데… 이런 경험이 다른 분들에게 공유되서 삽질 안하셨으면 하는 바램으로 글을 써본다.

먼저 기존 프로젝트는 그대로 두고 고도화 할 프로젝트를 따로 파서(branch) FVM 환경에서 flutter 2.0 이상 버전으로 올려 마이그레이션을 할 계획이었다.

고도화 할 해당 프로젝트를 연 후 fvm 을 깔아보자

터미널에 다음과 같이 친다

dart pub global activate fvm

뭔가 막 설치한다.

나같은 경우엔 다음과 같은 Warning 이 떴다.

Warning: Pub installs executables into $HOME/.pub-cache/bin, which is not on your path. You can fix that by adding this to your shell’s config file (.bashrc, .bash_profile, etc.): export PATH=”$PATH”:”$HOME/.pub-cache/bin”

이 경우

export PATH=”$PATH”:”$HOME/.pub-cache/bin”

문구를 그대로 터미널에 쳐준다.

그럼 fvm 설치 끝~

fvm use 2.2.1

사용한 flutter 버전을 써서 사용하겠다고 선언 해준다.

그 다음 IDE에서 참조하고 있는 flutter sdk 경로를 fvm쪽으로 변경해주어야 한다.

보통 해당 프로젝트의 .fvm/flutter_sdk 에 위치하고 있다

IDE의 SDK 경로까지 다 바꿔주면 끝났다.

그리고 참고할 점은 fvm을 활용하는 프로젝트는 flutter clean 과 같이 앞에 flutter 가 붙는 명령어 앞에 fvm을 꼭 붙여 주어야 동작한다.

ex) fvm flutter clean fvm flutter packages pub run build_runner build –delete-conflicting-outputs

이 점을 몰라서 명령어가 왜 안듣지? 하고 삽질을 많이 했다…

아직 dart 버전을 2.X 버전과 호환시키도록 바꿔주지 않았다! (flutter 2.0 이상 쓸거면 dart는 2.12.0 버전이 최소 조건이다)

이건 미리 올리지 말고 라이브러리를 먼저 올려서 달라진 API 등을 먼저 맞춰 준다음 dart 버전을 올리고 그 다음 마이그레이션을 진행하는게 편하다!

그럼 다음 게시글에서 FVM에서 2.X 버전으로 마이그레이션 해보자!

카테고리:

업데이트:

댓글남기기