【问题标题】:How to find unused flutter classes in Android Studio or Visual Studio Code如何在 Android Studio 或 Visual Studio Code 中找到未使用的颤振类
【发布时间】:2020-06-03 03:39:21
【问题描述】:

由于客户端应用需求的快速变化,我有近 200 个 dart 文件,其中许多是未使用的。除了手动一一搜索之外,我有什么方法可以找到未使用的类?在 Android Studio 中,我可以使用“检查代码”功能找到未使用的 java 或 kotlin 类。但我找不到任何用于 dart / flutter 相同目的的工具。

提前感谢您的帮助。

【问题讨论】:

    标签: android-studio flutter dart visual-studio-code android-studio-3.0


    【解决方案1】:

    Dart 代码指标https://pub.dev/packages/dart_code_metrics 支持为flutter查找未使用的文件。

    安装:

          flutter pub add --dev dart_code_metrics
    

    运行“flutter packages get”或使用您的 IDE 来“Pub get”。

    运行:

         flutter pub run dart_code_metrics:metrics check-unused-files lib
    

    结果:

        Unused file: lib/generated_plugin_registrant.dart
        Unused file: lib/ux/Pdf/makepdfdocument.dart
        Unused file: lib/ux/RealEstate/realestatetable.dart
    ...
    Total unused files - 11
    

    Howo to find unused dart or flutter files (Medium)

    Introduction to dart-code-metrics (Medium)

    代码指标还可以提供以下方面的洞察:

    • 圈复杂度
    • 代码行
    • 最大嵌套
    • 方法数
    • 参数数量
    • 源代码行
    • 类的重量

    【讨论】:

      【解决方案2】:

      我不确定未使用的课程本身。我知道您至少可以清理未使用的导入文件。

      在 Android Studio 中有一个 Optimize Imports 函数,您可以在特定文件上调用它。它会删除任何未使用的导入。看来您还可以在设置中配置关于提交的设置。查看Version Control -> Commit Dialog 以获得Optimize Imports

      在 VSCode 的 Problems 选项卡中,您可以看到未使用的变量,但我不是 100% 确定它适用于类。但是您的编辑器也可能会通过其语法突出显示未使用的类来通知您。

      【讨论】:

        【解决方案3】:

        项目中未使用的类通常通过选项全局未使用分析搜索 ,如关于此主题的先前答案之一所述https://stackoverflow.com/a/38244028/10498374

        我认为目前尚不支持 dart 文件

        临时解决办法,你可以删除你不想要的文件,如果在项目中使用它,Android Studio 会告诉你它被使用了

        【讨论】:

        • 或者你可以 Ctrl+单击它,看看是否有某个类在引用它。如果没有,则安全地删除它。无论如何,Dart Analysis 选项卡会提醒您,项目也不会编译。
        【解决方案4】:

        在 VS 代码中,文件中所有未使用的类都标记为灰色或带下划线,当您将鼠标悬停在它们上时,会出现一个弹出窗口,告诉您当前文件中的任何地方都没有使用该类。然后,您可以删除所有此类。

        或者,对于您怀疑未使用的每个类,您可以进行全局搜索,方法是按 vs 左上角的循环图标并输入类的名称作为搜索键,从那里您可以看到使用与否

        【讨论】:

          猜你喜欢
          • 2021-09-18
          • 2021-01-28
          • 1970-01-01
          • 2023-03-03
          • 1970-01-01
          • 2019-02-16
          • 1970-01-01
          • 2018-03-19
          • 1970-01-01
          相关资源
          最近更新 更多