import_of_legacy_library_into_null_safe 진단: null safe 라이브러리가 레거시 라이브러리를 import 하면 안 돼요
import_of_legacy_library_into_null_safe 진단: null safe 라이브러리가 레거시 라이브러리를 import 하면 안 돼요
null safe인 라이브러리가 null safe가 아닌(레거시) 라이브러리를 import 하면 Dart 분석기가 이 진단을 내보내요. null safety의 안전장치가 레거시 코드와 섞이면서 깨질 수 있기 때문이에요.
본문
설명
분석기는 null safe인 라이브러리가 null safe가 아닌 라이브러리를 import 하면 이 진단을 만들어요.
예시
a.dart 파일에 다음 내용이 있다고 할게요.
class A {}
다음 코드는 null safe인 라이브러리가 null safe가 아닌 라이브러리를 import 하기 때문에 이 진단을 만들어요.
import 'a.dart';
A? f() => null;
흔한 해결 방법
가져오는 라이브러리를 null safe로 마이그레이션할 수 있다면, 마이그레이션한 뒤 그 라이브러리의 언어 버전(language version)을 갱신하거나 제거해요.
가져오는 라이브러리를 마이그레이션할 수 없다면, 가져오는 쪽 라이브러리의 언어 버전을 null safety가 기본으로 켜지기 전인 2.12 이전으로 맞춰야 해요.