【问题标题】:How to make pub build show warnings/hints from all packages如何使 pub build 显示来自所有包的警告/提示
【发布时间】:2015-01-15 09:55:23
【问题描述】:

我有一个应用程序,其中包含我自己开发的大约 10 个包。我只在其中一个上运行 pub build,它依赖于其他包。当我运行 pub build 时,我收到如下输出:

[Dart2JS on myapp_client|web/index.html_bootstrap.dart]:
3 warning(s) suppressed in package:myapp_shared.
[Warning from Dart2JS on myapp_client|web/index.html_bootstrap.dart]:
4 hint(s) suppressed in package:myapp_infra.
[Dart2JS on myapp_client|web/index.html_bootstrap.dart]:
8 warning(s) suppressed in package:myapp_client.

由于这些警告都来自我的代码,我有兴趣查看完整的警告,我确实希望它们被抑制。我怎样才能做到这一点?我已经看到 dart2js 有一个 --show-package-warnings 选项,但 pub build 没有这个。此外,此选项在 dart2js 转换器的 pubspec.yaml 中不可配置。

【问题讨论】:

  • 为什么你认为这是不可能为dart2js变压器配置的?永远的阿米加 ;-)
  • 在 pubspec.yaml、transformers、$dart2js 中,我尝试输入 show-package-warnings: true。 Pub build 报告这是一个无效的选项。它仅记录为在命令行上可用,所以我只是在尝试。是的,永远的 Amiga :-)
  • 您可以尝试commandLineOptions,如此答案stackoverflow.com/a/21339347/217408 中所示(我尝试了一段时间)。另请参阅页面底部的dartlang.org/tools/pub/dart2js-transformer.html
  • 一种选择是从命令行手动运行“dartanalyzer --package-warnings”。 dartlang.org/tools/analyzer
  • commandLineOptions 工作! :-) 我将此添加到 $dart2js "commandLineOptions: [--show-package-warnings]" 下的 pubspec.yaml 中。现在,当我进行 pub build 时,我可以看到我的包中的所有警告。我想我也会看到来自其他包的警告(如果有的话),所以解决方案可能并不理想,但它对我有用,因为我依赖的其他包没有警告。

标签: dart dart-pub


【解决方案1】:

Günter 和 Jonas 已经回答了这个问题。因为我花了几分钟才弄清楚实际的语法,所以我想把它说清楚。您的pubspec.yaml 应包括以下几行:

- $dart2js:
    commandLineOptions: [--show-package-warnings]

【讨论】:

  • 为了清楚起见,这些行应该在变形金刚下:部分
【解决方案2】:

似乎没有这样的选项可用。
使用 http://dartbug.com/9512 生成依赖项警告被抑制,但路径依赖项也不例外(请参阅链接问题中的 codereview 链接)。

【讨论】:

猜你喜欢
  • 2015-04-11
  • 2018-06-08
  • 1970-01-01
  • 2013-04-28
  • 2017-10-17
  • 1970-01-01
  • 2021-02-09
  • 2018-09-26
  • 2011-07-19
相关资源
最近更新 更多