TOP
본문 바로가기
📚 목차
[앱개발]/Flutter, Dart, Figma

[플러터] 에러 발생 및 해결

by 기록자_Recordian 2025. 5. 21.
728x90
반응형

1. Gradle build failed to produce an .apk file...

import 'package:flutter/material.dart';

void main() {
  runApp(
    MaterialApp( // 머터리얼 디자인 위젯
      home: Scaffold( // Scaffold 위젯
        body: Center( // 가운데 정렬
          child: Text( // Text 위젯
          'Hello, World!', // 마지막 매개변수 끝에 콤마 추가
        ),
        ),
      ),
    ),
  );
}
Error: Gradle build failed to produce an .apk file. It's likely that this file was generated under G:\my_flutter\hello_world\build, but the tool couldn't find it.

 

▶ 해결

안드로이드 스튜디오 터미널에 하단의 명령어 순서대로 입력

작업 명령어
잘못된 JDK 경로 초기화 flutter config --clear
올바른 JDK 경로 설정 flutter config --jdk-dir="C:\Program Files\Java\jdk-17" (JAVAHOME 경로)
상태 확인 flutter doctor

 


2. Dart support is not enabled for the module '모듈명_andorid'

이 메시지는 Android Studio에서 Flutter 프로젝트를 열었을 때, 해당 모듈(예: 'projectname_android')에 Dart 지원이 설정되지 않아서 발생한다. Flutter는 Dart 언어를 사용해서 앱을 만드는데, 어떤 이유로 해당 모듈에서 Dart 설정이 안 되어 있어서 Dart 코드로 인식이 안 되어 IDE 기능들(예: 자동완성, 오류 표시 등)이 제대로 작동하지 않는다.

 

해결 방법

  • 방법 1: 전체 프로젝트를 다시 열기
    Android Studio 또는 IntelliJ를 완전히 종료
    다시 열 때는 Flutter 프로젝트 루트 폴더 전체를 선택해서 열기
    예: my_flutter_app/를 열어야지, my_flutter_app/android만 열면 Dart를 못 알아챔

  • 방법 2: Flutter Plugin 확인
    Android Studio → Settings (또는 Preferences on Mac)
    Plugins 검색
    Flutter와 Dart 플러그인이 모두 설치되어 있는지 확인
    설치 안 되어 있으면 설치 후 재시작

▶ 설치 되어 있는 것 확인 (따라서 현재는 2번이 원인은 아님)

 

  • 방법 3: .idea/modules.xml 복구
    간혹 프로젝트 설정 파일이 깨지면서 Dart 지원이 빠질 수 있다.
    .idea/modules.xml 파일을 열어
    Dart 관련 항목이 없다면 프로젝트를 새로 불러오거나 flutter clean + flutter pub get 후 다시 열기

See https://dart.dev/go/sdk-constraint
Failed to update packages.

 

dart 버전 확인 후

dart --version

 

pubspec.yaml 파일 내용 수정

name: blog_wep_app       # 앱 이름 (영문, 소문자, 언더스코어만 허용)
description: A new Flutter project.

environment:
  sdk: ">=3.0.0 <4.0.0"

 

그리고나서 IDE (Android Studio)를 껐다가 다시 켰더니 잘 된다.


3. Gradle project sync failed. Basic functionality (e.g. editing, debugging) will not work properly.

Flutter 프로젝트의 android/ 디렉터리는 내부적으로 Gradle이라는 도구를 사용해 안드로이드 앱을 빌드한다.
그런데 지금 이 Gradle이 제대로 작동하지 않아 프로젝트의 기본 기능들 (편집, 디버깅, 실행 등)이 안 될 수 있다는 뜻.

원인 해결 방법 결과
1 Gradle 캐시 문제 File > Invalidate Caches / Restart 실행 해결 실패
2 인터넷 문제 (Gradle 다운로드 실패) 인터넷 연결 확인 + 프록시 우회 필요 시 설정 확인 해결 실패
3 build.gradle 설정 오류 의존성 버전 또는 SDK 경로 확인 해결 완료
4 JDK 문제 올바른 JDK 버전 설치 및 설정 (JAVA_HOME) 문제 없음
5 Flutter SDK 문제 flutter clean → flutter pub get → flutter run 해결 실패

 

1번 - 해결 실패

 

2번 - 해결 실패

flutter clean
flutter pub get
flutter doctor

 

3번 - 해결

Minimum supported Gradle version is 8.11.1. Current version is 8.10.2.
Please fix the project's Gradle settings.

▶ Android Gradle Plugin은 Gradle 8.11.1 이상을 요구하고 있는데, 현재 설정된 Gradle 버전은 8.10.2라서 오류 발생

 

3-1. Gradle 버전 올리기

android/gradle/wrapper/gradle-wrapper.properties 파일의 gradle 버전을 8.11.1로 변경

 

3-2.

그리고나서 터미널에 하단 명령어를 차례대로 입력

flutter clean
flutter pub get

 

3-3.

File > Sync Project with Gradle Files

 

해결 완료!


4. Process 'command 'C:\tools\flutter_windows_3.29.3-stable\flutter\bin\flutter.bat'' finished with non-zero exit value 1

이 메시지는 Flutter 실행 중에 실패(error) 했다는 뜻이며, exit value 1은 일반적인 실패를 의미.
“왜 실패했는지”는 위쪽 로그에 더 자세히 나와 있다.

Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.

 

Flutter, Android, Kotlin Gradle 플러그인의 classpath 선언이 누락되어 있어

  • classpath가 없어서 Gradle sync 실패
  • Gradle 버전 호환성 문제
  • Flutter 빌드 실패

따라서, android/build.gradle.kts에 buildscript {} 블록과 classpath 선언을 추가해 준다.

// 🔧 꼭 필요한 플러그인 설정 추가
buildscript {
    repositories {
        google()
        mavenCentral()
    }
    dependencies {
        // Flutter Gradle Plugin
        // 추가 X classpath("dev.flutter:flutter-gradle-plugin:1.0.0")
        // Android Gradle Plugin
        classpath("com.android.tools.build:gradle:8.1.1")
        // Kotlin Gradle Plugin
        classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.10")
    }
}

classpath("dev.flutter:flutter-gradle-plugin:1.0.0") 의 경우, Flutter는 이미 자체적으로 이 플러그인을 관리하고 있으므로 추가하게 되면 오류가 발생한다.

 

수정 후 터미널에 아래 명령어를 한 줄씩 입력

flutter clean
flutter pub get
flutter run   # 또는 flutter build apk

 

그리고 Gradle sync 작업도 실행

 

해결 완료!


5. Entrypoint isn't within the current project

Flutter 프로젝트에서 **실행 진입점(entrypoint)**으로 지정한 파일이 현재 Flutter 프로젝트 디렉터리 내부에 없다는 뜻

 

반드시 pubspec.yaml 파일이 있는 루트 폴더에서 명령어를 실행해야 한다.

필자의 경우, 경로가 /android로 되어 있어서 루트 폴더로 경로를 이동한 뒤 플러터를 실행하였다.

cd .. // 상위 경로로 이동
flutter run

 

DevFSException(Service disconnected, _createDevFS: (-32000) Service connection disposed)

▶ flutter가 앱을 디바이스(또는 에뮬레이터)에 배포하면서 내부 파일 시스템(DevFS)과의 연결이 예상치 못하게 끊겼을 때 발생

원인 설명
디바이스 연결 끊김 USB 케이블 불량, USB 디버깅 꺼짐, 에뮬레이터 중지 등
Flutter daemon 문제 Flutter 내부 서비스가 충돌함
에뮬레이터 재시작 또는 중지됨 앱 빌드 중 에뮬레이터가 꺼졌을 경우
오래된 Gradle 캐시나 빌드 충돌 이전 빌드 캐시가 DevFS와 충돌
adb(server) 오류 Android Debug Bridge가 비정상 작동

 

에뮬레이터를 껐다 켜니 해결되었다.

 

Error connecting to the service protocol: failed to connect to http://127.0.0.1:xxxxx/keh_0-cbhAk=/ DartDevelopmentServiceException: Failed to start Dart Development Service

flutter가 앱을 실행하면서 사용하는 **Dart DevTools 서비스(DDS)**에 연결하려 했는데, 포트 오류나 내부 충돌 때문에 실패했다는 의미

 

Flutter 앱을 실행하면 내부적으로 Dart 개발 서버(DDS)를 실행하여 hot reload, 로그 출력, 디버깅 등을 처리한다.
그런데 이 서비스가 포트를 열지 못하거나, 이미 열려있는 포트와 충돌하거나, 방화벽/보안 소프트웨어가 차단하면 이 오류가 발생한다.

원인 해결 방법
⚠️ 이전 Flutter 프로세스가 죽지 않고 남아 있음 프로세스 강제 종료
🔐 포트가 방화벽에 의해 차단됨 방화벽 예외 설정
🔃 오래된 Flutter 캐시, DDS 문제 flutter clean 후 재시작
🧩 안드로이드 에뮬레이터나 USB 디바이스 연결 문제 재시작 후 재연결
🐞 Flutter 자체 버그 Flutter 업그레이드

 

Flutter 프로세스 정리

taskkill /F /IM dart.exe /T

 

다시 실행

flutter clean
flutter pub get
flutter run --disable-dds // DDS 강제로 끄고 실행

 


6. FAILURE: Build failed with an exception.  Included build 'D:\ê°ë° ê´ë ¨

Windows에서 Flutter SDK나 Gradle이 한글 경로 또는 공백이 있는 경로를 제대로 처리하지 못하는 경우가 많다.

필자의 경우도, 경로가 '개발 관련' 이라는 한글 경로에 있어 빌드가 실패한 것으로 보인다.

 

따라서 IDE를 종료한 뒤, 해당 폴더를 영어로 바꿔주고, 시스템 환경 변수에서 path 등을 새롭게 바뀐 폴더명으로 바꿔주었다.

또한, 해당 프로젝트 내의 . .idea 폴더를 삭제하여 캐시를 제거하고 Android Studio에서 프로젝트를 다시 연다.

그리고나서 settings.gradle.kts 또는 settings.gradle 경로 수정

includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")

 

만약 이렇게 되어 있다면, 경로가 자동으로 수정되니 바꿔줄 필요는 없다.

그리고 IDE를 켜고, 하단의 명령어를 입력

flutter doctor
flutter clean
flutter pub get

 


7. Error: No pubspec.yaml file found.

"Error: No pubspec.yaml file found. This command should be run from the root of your Flutter project." 이 오류는 Flutter 프로젝트의 루트 디렉토리에 있지 않거나, pubspec.yaml 파일이 없는 경우 발생한다. pubspec.yaml 파일은 Flutter 프로젝트의 구성과 의존성을 정의하는 파일이며, 프로젝트의 루트 디렉토리에 위치해야 한다. 

 

하단의 이미지를 보면, pubspec.yaml 파일은 app 디렉터리 내에 있으므로,

 

cd app # app 경로로 이동
fluttern run # 실행

 

 

 

 

 


다음 내용

 

[플러터] pub 명령어

에러 발생 관련 [플러터] 에러 발생 및 해결1. Gradle build failed to produce an .apk file...import 'package:flutter/material.dart';void main() { runApp( MaterialApp( // 머터리얼 디자인 위젯 home: Scaffold( // Scaffold 위젯 body: Ce

puppy-foot-it.tistory.com

728x90
반응형