有没有办法获取 Dart 控制台项目的可执行文件?

Is there any way to get executable file for Dart console project?

有什么方法可以将我的 dart 控制台项目编译成可执行文件吗? 或者也许有一些实用程序,例如 launch4j for Java?

我们还没有真正把所有的部分都放在一起。

我会看一下这个问题:https://github.com/dart-lang/sdk/issues/34343

我会在团队中找到合适的人来回复更多详细信息。

我们可以通过 dart2native.

将 Dart 项目构建到原生应用程序

例如我们有main.dart:

import 'package:ansicolor/ansicolor.dart';

main(List<String> arguments) {
  AnsiPen greenPen = AnsiPen()..green();
  AnsiPen greenBackGroundPen = AnsiPen()..green(bg: true);

  AnsiPen redTextBlueBackgroundPen = AnsiPen()..blue(bg: true)..red();

  AnsiPen boldPen = AnsiPen()..white(bold: true);

  AnsiPen someColorPen = AnsiPen()..rgb(r: .5, g: .2, b: .4);

  print(greenPen("Hulk") + " " + greenBackGroundPen("SMASH!!!"));
  print(redTextBlueBackgroundPen("Spider-Man!!!") + " " + boldPen("Far From Home!!!"));

  print(someColorPen("Chameleon"));

  print('\x1B[94m' + "hahAHaHA!!!" + '\x1B[0m');
}

pubspec.yaml作为

name: colored_text_test
description: A sample command-line application.

environment:
  sdk: '>=2.1.0 <3.0.0'

dependencies:
  ansicolor: ^1.0.2

dev_dependencies:
  test: ^1.0.0

我们可以使用命令 dart2native.bat bin\main.dart 并获得 main.exe 作为可执行输出。

我们也可以使用-o选项指定名称:dart2native main.dart -o my_app

是的,这个能力was added in Dart 2.6

在较新的 Dart 版本中,dart2native 工具已集成到 dart 二进制文件中。有关详细信息,请参阅教程 Write command-line apps on dart.dev