2

我是 Dart 新手,想开始为 Dart 开发应用程序。现在,我只是简单地使用dart2js --minify它,效果很好,但是当我需要通过更改代码,运行代码,更改代码,运行代码等来调试我的错误时真的很慢。这需要大量编译,所以虽然dart2js一般来说非常快,但调试 Dart Web 应用程序dart2js真的很慢。

我想在 Dartium 中使用 Dart VM 并按照该视频的说明下载它(尽管我承认,我没有观看整个视频,因为其中一部分是关于我不使用的 Atom)。但是,当我打开 Dartium (./chrome./chrome-wrapper) 时,它看起来与前面的常规 Chrome 没有任何不同。没有--no-sandbox警告,并且用户代理与 Chromium 中的相同(否(Dart))。当我尝试使用 运行 Dart Web 应用程序时<script type="application/dart" [...]>,它不起作用。

运行 Dartium 时,我也收到以下错误(同样的错误发生在./chrome和上./chrome-wrapper):

[18997:18997:0829/163445:ERROR:browser_main_loop.cc(163)] Running without the SUID sandbox! See https://code.google.com/p/chromium/wiki/LinuxSUIDSandboxDevelopment for more information on developing with the sandbox on.
Created new window in existing browser session.
[19044:19044:0829/163446:ERROR:zygote_linux.cc(587)] write: Broken pipe
[0829/163446:ERROR:nacl_helper_linux.cc(282)] NaCl helper process running without a sandbox!
Most likely you need to configure your SUID sandbox correctly

但是,当我转到错误中的链接时,这些说明指的是一堆我不认识的命令和文件。

有人可以帮我弄清楚如何构建 Dartium 吗?非常感谢!

附加信息:

  • 我正在运行 Ubuntu 15.04,我的默认浏览器是 Chromium。
  • 当我同时运行./chromeand./chrome-wrapper时,我关闭了原来的 Chromium。
  • 我已将我的项目上传到 GitHub
4

2 回答 2

2

也许 Dartium 正在连接到现有版本的 Chromium。尝试使用--user-data-dir=/tmp/dartium_dir. 这将确保它与任何现有的 Chromium 分开启动。

于 2015-09-01T06:10:30.320 回答
1

我想检查您是否运行 Dartium 的最佳方法是about://version在 URL 栏中输入并检查是否Dart: someversion列出。我通常从 WebStorm 启动 Dartium,其中列出了以下命令行about://version

/usr/local/apps/dart/dartium/chrome --no-sandbox --flag-switches-begin --disable-async-dns --enable-devtools-experiments --enable-download-resumption --javascript-harmony --enable-panels --flag-switches-end

而不是dart2js它通常更易于使用pub buildpub build通常仅用于部署。对于开发来说,运行 Dart 开发 Web 服务器通常效果最好pub serve。当不支持 Dart 的浏览器请求页面时,Pub serve 会即时构建到 JavaScript。如果 Dartium 请求一个页面,它会提供 Dart 源代码。如果您的源代码更改,当您在不支持 Dart 的浏览器中重新加载页面时,您会自动获取更新 JS。

(如果您更改依赖项pub getpub upgrade需要重新启动pub serve

于 2015-08-30T07:24:43.003 回答