简体   繁体   English

如何修复 flutter lib/main.dart 错误

[英]How to fix flutter lib/main.dart errors

I am a beginner in flutter this is my first project.我是 flutter 的初学者,这是我的第一个项目。 I set up a new project using the command flutter create then I faced multiple problems which I fixed using flutter doctor -v , but now I am facing these errors that I can't seem to find a way to fix them, every time I run flutter run Running Gradle task 'assembleDebug'... takes a long time then I get the following errors:我使用命令 flutter create 创建了一个新项目,然后我遇到了多个问题,我使用flutter doctor -v修复了这些问题,但是现在我遇到了这些错误,我似乎无法找到解决它们的方法,每次我运行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

I found a solution, the flutter and dart plugin was installed in android studio but everytime i run flutter -vi would get an error that it wasn't installed so i fixed it using the following steps我找到了一个解决方案,flutter 和 dart 插件已安装在 android 工作室中,但每次我运行 Z5ACEBC4CB70DDBB074B0AC76AAB176Z 时,我都会使用以下步骤安装它,所以它会得到一个错误

flutter upgrade

flutter config --android-studio-dir="C:\Program Files\Android\Android Studio"

flutter doctor -v
    
flutter channel beta

flutter upgrade

then i created a new project and launched it and it worked然后我创建了一个新项目并启动它并且它工作

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM