Use dartanalyzer to statically analyze your code at the command line, checking for errors and warnings that are specified in the Dart Language Specification. DartPad, code editors, and IDEs such as WebStorm use the same analysis engine that dartanalyzer uses.

If you want to contribute to the dartanalyzer project, see the contributor docs. This page contains information about using the dartanalyzer command-line tool.

Basic usage

Run the analyzer from the top directory of the package. Here's an example of testing a Dart file.

dartanalyzer bin/test.dart


The following are the most commonly used options for dartanalyzer:

  • --packages=<br> Specify the path to the package resolution configuration file. For more information see Package Resolution Configuration File. This option cannot be used with --package-root.

  • --package-warnings<br> Show warnings not only for code in the specified .dart file and others in its library, but also for libraries imported with package:.

  • --options=<br> Specify the path to an analysis options file.

  • --lints<br> Show the results from the linter.

  • --no-hints<br> Don't show hints for improving the code.

  • --ignore-unrecognized-flags<br> Rather than printing the help message, ignore any unrecognized command-line flags.

  • --version<br> Show the analyzer version.

  • -h or --help<br> Show all the command-line options.

The following are advanced options to use with dartanalyzer:

  • -b or --batch<br> Run in batch mode.

  • --dart-sdk=<br> Specify the directory that contans the Dart SDK.

  • --fatal-warnings<br> Except for type warnings, treat warnings as fatal.

  • --format=machine<br> Produce output in a format suitable for parsing.

  • --url-mapping=libraryUri,/path/to/library.dart<br> Tells the analyzer to use the specified library as the source for that particular import.

The following options are deprecated:

  • -p or --package-root=<br> Deprecated. Specify the directory to search for any libraries that are imported using package:. This option is replaced as of Dart 1.12 with --packages.

  • --machine<br> Deprecated. Replaced by --format.

  • --show-package-warnings<br> Deprecated. Replaced by --package-warnings.

  • --show-sdk-warnings<br> Deprecated. Replaced by --warnings.