Flutter 颤振发布运行生成\运行程序生成失败
颤振版本:Flutter 颤振发布运行生成\运行程序生成失败,flutter,dart,visual-studio-code,Flutter,Dart,Visual Studio Code,颤振版本: flutter_macos_v1.9.1+hotfix.2-stable Analyzer: 0.39.14 在终端中创建新项目: flutter create myapp flutter pub get [INFO] Generating build script... [INFO] Generating build script completed, took 321ms [INFO] Creating build script snapshot...... [INF
flutter_macos_v1.9.1+hotfix.2-stable
Analyzer: 0.39.14
在终端中创建新项目:
flutter create myapp
flutter pub get
[INFO] Generating build script...
[INFO] Generating build script completed, took 321ms
[INFO] Creating build script snapshot......
[INFO] Creating build script snapshot... completed, took 10.4s
[INFO] Initializing inputs
[INFO] Building new asset graph...
[INFO] Building new asset graph completed, took 698ms
[INFO] Checking for unexpected pre-existing outputs....
[INFO] Checking for unexpected pre-existing outputs. completed, took 2ms
[INFO] Running build...
[SEVERE] json_serializable:json_serializable on lib/user.dart:
Invalid argument(s): Path must be absolute : dart:core
[SEVERE] json_serializable:json_serializable on lib/main.dart:
Invalid argument(s): Path must be absolute : dart:core
[SEVERE] json_serializable:json_serializable on test/widget_test.dart:
Invalid argument(s): Path must be absolute : dart:core
[INFO] Running build completed, took 1.5s
[INFO] Caching finalized dependency graph...
[INFO] Caching finalized dependency graph completed, took 36ms
[SEVERE] Failed after 1.6s
打开vscode,编辑pubspec.yaml:
dependencies:
json_annotation: ^3.0.0
dev_dependencies:
build_runner: ^1.7.0
json_serializable: ^3.2.2
在终端中获取包:
flutter create myapp
flutter pub get
[INFO] Generating build script...
[INFO] Generating build script completed, took 321ms
[INFO] Creating build script snapshot......
[INFO] Creating build script snapshot... completed, took 10.4s
[INFO] Initializing inputs
[INFO] Building new asset graph...
[INFO] Building new asset graph completed, took 698ms
[INFO] Checking for unexpected pre-existing outputs....
[INFO] Checking for unexpected pre-existing outputs. completed, took 2ms
[INFO] Running build...
[SEVERE] json_serializable:json_serializable on lib/user.dart:
Invalid argument(s): Path must be absolute : dart:core
[SEVERE] json_serializable:json_serializable on lib/main.dart:
Invalid argument(s): Path must be absolute : dart:core
[SEVERE] json_serializable:json_serializable on test/widget_test.dart:
Invalid argument(s): Path must be absolute : dart:core
[INFO] Running build completed, took 1.5s
[INFO] Caching finalized dependency graph...
[INFO] Caching finalized dependency graph completed, took 36ms
[SEVERE] Failed after 1.6s
新建/lib/user.dart
并填充以下内容:
import 'package:json_annotation/json_annotation.dart';
part 'user.g.dart';
@JsonSerializable()
class User extends Object {
@JsonKey(name: 'seed')
String seed;
@JsonKey(name: 'results')
int results;
@JsonKey(name: 'page')
int page;
@JsonKey(name: 'version')
String version;
User(
this.seed,
this.results,
this.page,
this.version,
);
factory User.fromJson(Map<String, dynamic> srcJson) =>
_$UserFromJson(srcJson);
Map<String, dynamic> toJson() => _$UserToJson(this);
}
为什么从来没有成功过 我也有同样的问题
已成功生成所有*.g.dart文件,包括:
build_runner 0.9.2
json_可序列化0.5.8+1
json_注释0.2.9+1看起来Analyzer正在破坏它,降级到
Analyzer:0.38.2
为我解决了它
来源:在这种情况下可能不是这样,但是我的自动格式化程序删除了这一行,导致了类似的问题:
part 'my_class.g.dart';
一旦我添加了那一行并再次运行命令,它就工作得很好。我也有同样的问题,所以我只是先在类中保存更改(在您的例子中是
User
class)。然后我用以下方法重试:
flutter pub run build_runner build
试试这个
flutter pub get && flutter pub run build_runner build --delete-conflicting-outputs
在pubsec.yaml中添加依赖项,分析器:“0.39.14”
flutter clean
flutter pub cache repair
flutter pub run build_runner clean
然后跑,
flutter pub run build_runner build
在尝试了上述所有建议的漫长过程后,我使用了最新的build_runner和json_可序列化版本: 生成运行程序:^1.10.2 json_可序列化:^3.4.0 不确定最终的效果如何,但我的案例中的一个问题似乎是一个稍微过时的dart SDK,所以还有一件事需要注意更新2020/8/24: 在版本中似乎破坏了build_runner或json_可序列化:
Analyzer: 0.39.16
返回dart analyzer版本:
flutter_macos_v1.9.1+hotfix.2-stable
Analyzer: 0.39.14
帮我修好了。
因此,0.39.16中出现了一些问题。请确保类名与生成的文件名相同。例如: 部分“用户”.g.dart” 类用户{
}我尝试了许多解决方案,但错误并没有消失<代码>颤振包pub run build_runner watch命令以无休止的日志运行
我删除了pubspec.lock并运行了
flatter-pub-get
,再次安装了dependency并运行了上述命令。此错误消失后。请在flatter packages pub run build\u runner build
命令之前为models类创建默认的空构造函数,描述您试图实现的目标,而不是只发布代码,这将有助于其他人理解问题。不要试图绕过stackoverflow限制DART 2.0存在某种错误,并显示相同的错误消息。他试图自动生成Json序列化,就像我一样,并且遇到了同样的错误。没有任何意义。以下是我们关注的内容:帮助您解决了这个问题吗?我也有同样的问题。我想不出来。@bradbury9自动json序列化/反序列化,请检查我的其他评论。使用Moor解决了这个问题,并且这个解决方案对我有效。谢谢您的回答!build_runner:^1.10.2需要Dart版本2.-10.0+,因此,我将版本更改为1.10.1,幸运的是它成功了。添加flatter pub get
afterflatter pub run build_runner clean
,它为我成功了!