【问题标题】:dart language: How to get all the classes available to import?dart 语言:如何获取所有可导入的类?
【发布时间】:2022-07-06 22:26:14
【问题描述】:

我想以编程方式获取所有可导入的 dart 文件。 我怎样才能做到这一点? (以编程方式)

【问题讨论】:

  • 这个计划的一个潜在问题是包包含多个 dart 文件,但通常只有一个(或几个)实际上应该被导入。所以我们不能只遍历所有可用的 Dart 文件并自动导入这些文件。此外,如果一个包有多个 Dart 文件要导入,这通常是因为存在一些限制。例如。如果做 web-developer,则导入特定版本,如果做 Flutter,则导入另一个文件。

标签: dart import reflection


【解决方案1】:

您希望在哪个环境中使用它?

如果是单个Pub包,确保dart pub get已经运行,然后解析.dart_tool/package_config.json文件,找到所有包的根。然后在这些目录中搜索所有不是部分文件的dart 文件(不以part of ...; 开头)。剩下的应该是可以导入的 Dart 库文件。

如果您只想要可以从lib/ 内部导入的包,您可能还需要解析pubspec.yaml 文件,因此您可以忽略dev_dependencies

那么您可能还想列出可用的dart:... 平台库。哪些可用取决于您编译的平台。您需要以某种方式弄清楚这一点,然后您应该为每个平台保留一个列表。

【讨论】:

    猜你喜欢
    • 2013-08-21
    • 1970-01-01
    • 2023-03-20
    • 2022-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-06
    相关资源
    最近更新 更多