Dart 在nodeJs服务器上模拟build_runner服务

Dart 在nodeJs服务器上模拟build_runner服务,dart,dart-pub,Dart,Dart Pub,随着几天前Dartium的到期,我觉得必须从dart 1.24.3迁移到Dart2,尽管它仍在开发中 尽管如此,我还是遇到了一些障碍,其中一个与我的应用程序架构有关 我运行一个nodeJs服务器,它还充当带有客户端dart的Web服务器。 我在使用新的dart SDK时遇到的问题是,为了在Chrome中读取.dart文件,必须使用webdev-serve或build\u-runner-serve提供这些文件 显然,这两个命令充当文件服务器,这不是我想要的,因为我使用的是nodeJS服务器 通过使

随着几天前Dartium的到期,我觉得必须从dart 1.24.3迁移到Dart2,尽管它仍在开发中

尽管如此,我还是遇到了一些障碍,其中一个与我的应用程序架构有关

我运行一个nodeJs服务器,它还充当带有客户端dart的Web服务器。 我在使用新的dart SDK时遇到的问题是,为了在Chrome中读取.dart文件,必须使用
webdev-serve
build\u-runner-serve
提供这些文件

显然,这两个命令充当文件服务器,这不是我想要的,因为我使用的是nodeJS服务器

通过使用
build\u runner watch
我认为我正在将.dart文件的构建和监视功能启用到以下目录中的.dart.js中:

.dart_工具/build/generated//lib

我还可以从我的nodeJS服务器为它们提供服务。剩下的是包目录,我似乎找不到pub services从何处获取以下包文件:

/packages/$sdk/dev_compiler/amd/require.js /packages/$sdk/dev_compiler/amd/dart_sdk.js

有人知道build_runner服务是如何包含他们的吗


谢谢,

这些文件来自dart sdk本身的
lib
目录


请注意,还有另一个选项,即使用build\u runner中的
-o
选项。这将创建一个包含源文件和生成文件的合并目录,您可以直接为其服务,而无需依赖任何内部文件布局。

在开发过程中使用不同的服务器有两个选项

  • 在不同的端口上运行
    build\u runner service
    ,并代理来自其他服务器的请求。这样做的好处是在构建过程中延迟请求,这样您就不会得到一组不一致的资产
  • 运行
    build\u runner watch--output web:build
    ,并使用创建的
    build/
    目录为来自的文件提供服务。这将包括一个包含这些文件的
    build/packages
    目录
  • 谢谢,输出web:build工作得很好。