我在我的 flutter 项目中使用 lint ,并在我的 analysis_options.yaml 中应用了一些规则,这些规则按我的预期在本地工作,但是当我在 github 操作上的工作流程执行时(使用相同的确切代码),flutter 分析失败并且向我展示 2 个像这样的新问题:
"info • Prefer const over final for declarations • lib/data/remote/user_api_provider.dart:146:7 • prefer_const_declarations
"
在本地“颤振分析”上它无法检测到它。
我很困惑,我在谷歌上找不到信息,我不知道如何解决这个问题。
我使用 Flutter 2.2.2 stable 和 dart 2.13.3 stable。
编辑: 这是我的工作流程
name: Lint-Analyze
on:
pull_request:
branches:
- develop
jobs:
flutter_analyze:
name: Run flutter analyze
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v1
with:
java-version: "12.x"
- uses: subosito/flutter-action@v1
with:
flutter-version: '2.2.2'
channel: 'stable'
- run: flutter pub get
- run: flutter analyze
我认为您在 GitHub 操作中的 Flutter 版本与您本地使用的版本不同。
请检查您的工作流程文件是否有类似以下内容:
with: flutter-version: '2.0.5'
并在本地计算机上运行
flutter doctor
以检查版本是否确实相同。如果没有,只需更改 GitHub 操作的版本即可。
希望这能解决您的问题:)
将 --no-fatal-infos 作为标志传递给 flutter 分析器将忽略信息警告。
这里:
flutter 分析 --no-fatal-infos
这是因为,与 dart 分析器不同,flutter 分析器返回致命退出代码 1,无论问题的严重性如何(信息、警告、错误)。