全新 Flutter 和 Dart 安装时的构建错误(导入错误)

Posted

技术标签:

【中文标题】全新 Flutter 和 Dart 安装时的构建错误(导入错误)【英文标题】:Build error on fresh Flutter and Dart installation (import error) 【发布时间】:2020-11-28 10:41:46 【问题描述】:

我是 Flutter 的新手,从零开始用 Dart 安装它。当我构建这样的基本示例时:

    import 'packafe:flutter/material.dart';

void main()
  runApp(
    title: "Mi Primer Aplicación",
    home: new Scaffold(
       appbar: new AppBar(
         title: new Text("Mi Primer aplicación")
       ), // AppBar
       body: new Container(
        child: new Center(
          child: new text("Hello World")
        ) // Center
       )
    )
  )

我收到此错误,我不得不说我可以运行您在创建新 Flutter 项目时获得的示例。

Invalid depfile: C:\Users\rodri\Documents\Cursos\Proyectos Flutter - Dart\primer_app_bien\.dart_tool\flutter_build\2b50f4f217897948359897bb9975b24c\kernel_snapshot.d
Invalid depfile: C:\Users\rodri\Documents\Cursos\Proyectos Flutter - Dart\primer_app_bien\.dart_tool\flutter_build\2b50f4f217897948359897bb9975b24c\kernel_snapshot.d
lib/main.dart:1:8: Error: Error when reading 'packafe:flutter/material.dart': StandardFileSystem only supports file:* and data:* URIs
import 'packafe:flutter/material.dart';
       ^
lib/main.dart:8:21: Error: Method not found: 'Text'.
         title: new Text("Mi Primer aplicación")
                    ^^^^
lib/main.dart:7:20: Error: Method not found: 'AppBar'.
       appbar: new AppBar(
                   ^^^^^^
lib/main.dart:12:22: Error: Method not found: 'text'.

第一次安装 Flutter、Dart、android Studio 和 Visual Code

【问题讨论】:

【参考方案1】:

您需要在 other 中导入 material 包才能在您的应用程序中使用 Material 小部件。

在您的导入语句中,您将 package 拼写为 packafe,这是错误的。

我添加了一个工作代码(以您的代码为例),用您的代码替换它:

// import the package correctly
import 'package:flutter/material.dart'; // new line

// main method
void main() 
  runApp(MyApp());



// create a stateless widget and build your widget tree
class MyApp extends StatelessWidget 
  @override
  Widget build(BuildContext context) 
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(title: new Text("Mi Primer aplicación")), // AppBar
        body: Container(
          child: Center(
            child: Text("Hello World"),
          ), // Center
        ),
      ),
    );
  

注意:Dart 2 (click for the announcement with more information) new 关键字被设为可选

这意味着new Container()Container() 完全相同。

【讨论】:

谢谢!我还注意到其他一些拼写错误。new 关键字修改的注释对我来说也很方便,因为我只是在学习语言。【参考方案2】:

将导入行更改为:import 'package:flutter/material.dart';

packafe 的拼写错误,而不是 package。希望这能解决问题。

【讨论】:

以上是关于全新 Flutter 和 Dart 安装时的构建错误(导入错误)的主要内容,如果未能解决你的问题,请参考以下文章

使用带有Flutter的完整Dart SDK

在 Flutter 中使用完整的 Dart SDK

《Flutter》-- 3.Dart语言

如何在 Windows 上使用 dart-sdk (dart2native) 和 flutter/dart-sdk?

一不小心入坑了Flutter

Flutter介绍和dart基础语法