에러가 생겨서
90
작성한 질문수 23
소스대로 했는데
에러가 생기네요
78, 79 번째줄 text 에서 에러입니다.
에러 메세지는
Running Gradle task 'assembleDebug'...
lib/chat_page.dart:78:63: Error: The getter 'text' isn't defined for the class 'Part'.
- 'Part' is from 'package:flutter_gemini/src/models/part/part.dart' ('/C:/Users/userpc/AppData/Local/Pub/Cache/hosted/pub.dev/flutter_gemini-3.0.0/lib/src/models/part/part.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'text'.
? HumanMessage(content: chat.parts?.first.text ?? '')
^^^^
lib/chat_page.dart:79:60: Error: The getter 'text' isn't defined for the class 'Part'.
- 'Part' is from 'package:flutter_gemini/src/models/part/part.dart' ('/C:/Users/userpc/AppData/Local/Pub/Cache/hosted/pub.dev/flutter_gemini-3.0.0/lib/src/models/part/part.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'text'.
: AIMessage(content: chat.parts?.first.text ?? '');
^^^^
Target kernel_snapshot failed: Exception
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:compileFlutterBuildDebug'.
> Process 'command 'C:\flutter\bin\flutter.bat'' finished with non-zero exit value 1
* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 4s
Exception: Gradle task assembleDebug failed with exit code 1
혹시
25, 34 번째줄 Parts 에 안쓴다는 줄 쳐졌는데
관계가 있나요

답변 1
0
안녕하세요! 질문으로 올려주셔서 감사합니다.
디버깅을 해보니 flutter_gemini가 버전업이 되면서, 사용법이 바뀌었고, 와중에 freezed를 활용한 타입선언에는 에러가 있네요. 아래와 같이 변경해서 사용해주시면 됩니다.
// setState해서 UI를 변경하는 부분
setState(() {
chatList = [
...chatList,
// Content(role: 'model', parts: [Parts(text: value?.output)]) //기존 2.x 버전
Content(role: 'model', parts: [Part.text(value?.output ?? '')]) // 3.x 버전
];
});
그리고 채팅 내역을 보여주는 부분은 type casting을 해줘야합니다.
itemBuilder: (context, index) {
final chat = chatList[index];
Widget messageWidget = chat.role == 'user'
? HumanMessage(content: chat.parts?.first is TextPart ? (chat.parts?.first as TextPart).text : '')
: AIMessage(content: chat.parts?.first is TextPart ? (chat.parts?.first as TextPart).text : '');
return messageWidget;
},덕분에 저도 강의자료를 업데이트했는데요, 빠른시일내에 촬영해서 내용을 수정해야 할 것 같습니다
감사합니다!
에이전트 에러
0
10
1
커스텀 에이전트 생성하기
0
7
1
강의 잘 들었습니다만 부탁이 하나 있어서요..
0
10
2
롱폼 영상 강의도 있으신가요? 도움이 많이 되었습니다.
1
10
1
outputStyle 설정하는데 어디서 문제일까요?
0
10
2
〈클로드 코드와 멀티 에이전트로 내 일상을 모두 자동화하기〉 강의 전자책 관련 문의
0
6
1
무서워요 다음에는... 조심.
1
15
1
실습프로그램이 뭔가요?
0
8
1
test.txt파일 삭제시 rm명령어이니 클로드의 질문이 있어야 한다고 하셨는데
0
7
1
검은화면
0
13
2
CodeCraft 실습 자료 및 클로드 코드 논문 필수 내용 재구성 학습 자료
0
13
2
강의교환링크안열려요.....
0
14
1
영상재생에러 [확인부탁드려요!!!]
0
14
1
클로드 채팅에서 코드로 넘어가기
0
16
1
혹시 Windows에서 Docker Desktop을 설치하는 이유가
0
15
1
클로드 코드 시작하기
0
16
1
맥북
0
17
1
ide에서 명령어를 넣을때 한줄 후 엔터를 치면 넘어가버리는데 다음 명령어는 어떻게 하나요?
0
18
1
110강부터 따라가기가 힘듭니다...
0
39
1
gws auth setup 승인오류
0
25
1
커서에서 붙여넣기
0
22
1
또다른 오버플로우
0
85
2
오버플로우
0
103
2
실전강의는 무엇인가요?
1
125
1





