如何解决如何修复 flutter lib/main.dart 错误
我是 Flutter 的初学者,这是我的第一个项目。我使用 Flutter create 命令设置了一个新项目,然后我遇到了多个问题,我使用 Flutter doctor -v
修复了这些问题,但现在我面临这些错误,我似乎无法找到修复它们的方法,每次我run Flutter run Running Gradle task 'assembleDebug'... 需要很长时间然后我收到以下错误:
Launching lib\main.dart on sdk gphone x86 in debug mode...
Running Gradle task 'assembleDebug'...
lib/main.dart:7:37: Error: Can't find '}' to match '{'.
class MyApp extends StatelessWidget {
^
lib/main.dart:33:1: Error: Classes can't be declared inside other classes.
Try moving the class to the top-level.
class MyHomePage extends StatefulWidget {
^^^^^
lib/main.dart:33:18: Error: Expected a class member,but got 'extends'.
class MyHomePage extends StatefulWidget {
^^^^^^^
lib/main.dart:33:26: Error: A method declaration needs an explicit list of parameters.
Try adding a parameter list to the method declaration.
class MyHomePage extends StatefulWidget {
^^^^^^^^^^^^^^
lib/main.dart:51:1: Error: Classes can't be declared inside other classes.
Try moving the class to the top-level.
class _MyHomePageState extends State<MyHomePage> {
^^^^^
lib/main.dart:51:24: Error: Expected a class member,but got 'extends'.
class _MyHomePageState extends State<MyHomePage> {
^^^^^^^
lib/main.dart:51:32: Error: A method declaration needs an explicit list of parameters.
Try adding a parameter list to the method declaration.
class _MyHomePageState extends State<MyHomePage> {
^^^^^
lib/main.dart:29:13: Error: The method 'MyHomePage' isn't defined for the class 'MyApp'.
- 'MyApp' is from 'package:new_app/main.dart' ('lib/main.dart').
Try correcting the name to the name of an existing method,or defining a method named 'MyHomePage'.
home: MyHomePage(title: 'Flutter Demo Home Page'),^^^^^^^^^^
lib/main.dart:34:19: Error: Expected ',' before this.
MyHomePage({Key key,this.title}) : super(key: key);
^^^
lib/main.dart:34:35: Error: Expected ';' after this.
MyHomePage({Key key,this.title}) : super(key: key);
^
lib/main.dart:34:37: Error: Expected an identifier,but got ':'.
MyHomePage({Key key,this.title}) : super(key: key);
^
lib/main.dart:34:37: Error: Expected ';' after this.
MyHomePage({Key key,this.title}) : super(key: key);
^
lib/main.dart:34:37: Error: Unexpected token ';'.
MyHomePage({Key key,this.title}) : super(key: key);
^
lib/main.dart:34:39: Error: Can't use 'super' as an expression.
To delegate a constructor to a super constructor,put the super call as an initializer.
MyHomePage({Key key,this.title}) : super(key: key);
^
lib/main.dart:45:16: Error: The final variable 'title' must be initialized.
Try adding an initializer ('= expression') to the declaration.
final String title;
^^^^^
lib/main.dart:48:3: Error: '_MyHomePageState' isn't a type.
_MyHomePageState createState() => _MyHomePageState();
^^^^^^^^^^^^^^^^
lib/main.dart:34:3: Error: The method 'MyHomePage' isn't defined for the class 'MyApp'.
- 'MyApp' is from 'package:new_app/main.dart' ('lib/main.dart').
Try correcting the name to the name of an existing method,or defining a method named 'MyHomePage'.
MyHomePage({Key key,this.title}) : super(key: key);
^^^^^^^^^^
lib/main.dart:34:29: Error: The getter 'title' isn't defined for the class 'MyApp'.
- 'MyApp' is from 'package:new_app/main.dart' ('lib/main.dart').
Try correcting the name to the name of an existing getter,or defining a getter or field named 'title'.
MyHomePage({Key key,this.title}) : super(key: key);
^^^^^
lib/main.dart:48:37: Error: The method '_MyHomePageState' isn't defined for the class 'MyApp'.
- 'MyApp' is from 'package:new_app/main.dart' ('lib/main.dart').
Try correcting the name to the name of an existing method,or defining a method named '_MyHomePageState'.
_MyHomePageState createState() => _MyHomePageState();
^^^^^^^^^^^^^^^^
lib/main.dart:55:5: Error: The method 'setState' isn't defined for the class 'MyApp'.
- 'MyApp' is from 'package:new_app/main.dart' ('lib/main.dart').
Try correcting the name to the name of an existing method,or defining a method named 'setState'.
setState(() {
^^^^^^^^
lib/main.dart:77:21: Error: The getter 'widget' isn't defined for the class 'MyApp'.
- 'MyApp' is from 'package:new_app/main.dart' ('lib/main.dart').
Try correcting the name to the name of an existing getter,or defining a getter or field named 'widget'.
title: Text(widget.title),^^^^^^
FAILURE: Build Failed with an exception.
* Where:
Script 'I:\Programs\Flutter\packages\Flutter_tools\gradle\Flutter.gradle' line: 904
* What went wrong:
Execution Failed for task ':app:compileFlutterBuildDebug'.
> Process 'command 'I:\Programs\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 13m 24s
Exception: Gradle task assembleDebug Failed with exit code 1
解决方法
我找到了一个解决方案,在 android studio 中安装了 flutter 和 dart 插件,但是每次我运行 flutter -v 时我都会收到一个错误,说它没有安装,所以我使用以下步骤修复了它
flutter upgrade
flutter config --android-studio-dir="C:\Program Files\Android\Android Studio"
flutter doctor -v
flutter channel beta
flutter upgrade
然后我创建了一个新项目并启动它并且它工作了
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。