Flutter许可证信息收集插件license_harvest_cli的使用

发布于 1周前 作者 sinazl 来自 Flutter

Flutter许可证信息收集插件license_harvest_cli的使用

License: MIT

生成器由Very Good CLI 🤖

许可证收获。


开始使用🚀

如果CLI应用程序在pub上可用,可以通过以下命令全局激活:

dart pub global activate license_harvest_cli

或者通过以下命令本地激活:

dart pub global activate --source=path <路径到此包>

使用方法

# 报告命令
license_harvest report example

# 显示使用帮助
license_harvest --help

示例

license_harvest report example

name;licenses;url_license
_fe_analyzer_shared;BSD-3-Clause;https://pub.dev/packages/_fe_analyzer_shared/license
analyzer;BSD-3-Clause;https://pub.dev/packages/analyzer/license
args;BSD-3-Clause;https://pub.dev/packages/args/license
async;BSD-3-Clause;https://pub.dev/packages/async/license
boolean_selector;BSD-3-Clause;https://pub.dev/packages/boolean_selector/license
collection;BSD-3-Clause;https://pub.dev/packages/collection/license
convert;BSD-3-Clause;https://pub.dev/packages/convert/license
coverage;BSD-3-Clause;https://pub.dev/packages/coverage/license
crypto;BSD-3-Clause;https://pub.dev/packages/crypto/license
dart_internal;BSD-3-Clause;https://pub.dev/packages/dart_internal/license
file;BSD-3-Clause;https://pub.dev/packages/file/license
frontend_server_client;BSD-3-Clause;https://pub.dev/packages/frontend_server_client/license
glob;BSD-3-Clause;https://pub.dev/packages/glob/license
http_multi_server;BSD-3-Clause;https://pub.dev/packages/http_multi_server/license
http_parser;BSD-3-Clause;https://pub.dev/packages/http_parser/license
io;BSD-3-Clause;https://pub.dev/packages/io/license
js;BSD-3-Clause;https://pub.dev/packages/js/license
lints;BSD-3-Clause;https://pub.dev/packages/lints/license
logging;BSD-3-Clause;https://pub.dev/packages/logging/license
matcher;BSD-3-Clause;https://pub.dev/packages/matcher/license
meta;BSD-3-Clause;https://pub.dev/packages/meta/license
mime;BSD-3-Clause;https://pub.dev/packages/mime/license
node_preamble;BSD-3-Clause,MIT;https://pub.dev/packages/node_preamble/license
package_config;BSD-3-Clause;https://pub.dev/packages/package_config/license
path;BSD-3-Clause;https://pub.dev/packages/path/license
pool;BSD-3-Clause;https://pub.dev/packages/pool/license
pub_semver;BSD-3-Clause;https://pub.dev/packages/pub_semver/license
shelf;BSD-3-Clause;https://pub.dev/packages/shelf/license
shelf_packages_handler;BSD-3-Clause;https://pub.dev/packages/shelf_packages_handler/license
shelf_static;BSD-3-Clause;https://pub.dev/packages/shelf_static/license
shelf_web_socket;BSD-3-Clause;https://pub.dev/packages/shelf_web_socket/license
source_map_stack_trace;BSD-3-Clause;https://pub.dev/packages/source_map_stack_trace/license
source_maps;BSD-3-Clause;https://pub.dev/packages/source_maps/license
source_span;BSD-3-Clause;https://pub.dev/packages/source_span/license
stack_trace;BSD-3-Clause;https://pub.dev/packages/stack_trace/license
stream_channel;BSD-3-Clause;https://pub.dev/packages/stream_channel/license
string_scanner;BSD-3-Clause;https://pub.dev/packages/string_scanner/license
term_glyph;BSD-3-Clause;https://pub.dev/packages/term_glyph/license
test;BSD-3-Clause;https://pub.dev/packages/test/license
test_api;BSD-3-Clause;https://pub.dev/packages/test_api/license
test_core;BSD-3-Clause;https://pub.dev/packages/test_core/license
typed_data;BSD-3-Clause;https://pub.dev/packages/typed_data/license
vm_service;BSD-3-Clause;https://pub.dev/packages/vm_service/license
watcher;BSD-3-Clause;https://pub.dev/packages/watcher/license
web_socket_channel;BSD-3-Clause;https://pub.dev/packages/web_socket_channel/license
webkit_inspection_protocol;BSD-3-Clause;https://pub.dev/packages/webkit_inspection_protocol/license
yaml;MIT;https://pub.dev/packages/yaml/license

运行带覆盖率的测试 🧪

要运行所有单元测试,请使用以下命令:

dart pub global activate coverage
dart test --coverage=coverage
dart pub global run coverage:format_coverage --lcov --in=coverage --out=coverage/lcov.info

要查看生成的覆盖率报告,可以使用lcov

# 生成覆盖率报告
genhtml coverage/lcov.info -o coverage/

# 打开覆盖率报告
open coverage/index.html

更多关于Flutter许可证信息收集插件license_harvest_cli的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter许可证信息收集插件license_harvest_cli的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


当然,下面是如何在Flutter项目中使用license_harvest_cli插件来收集许可证信息的示例代码和步骤。license_harvest_cli是一个命令行工具,用于从Flutter项目的依赖项中收集许可证信息。尽管它不是一个Flutter插件(即它不是一个可以直接在Dart代码中使用的库),但可以通过命令行集成到Flutter项目中。

步骤 1: 安装 license_harvest_cli

首先,确保你已经安装了Dart SDK,因为license_harvest_cli是用Dart编写的。然后,全局安装license_harvest_cli

dart pub global activate license_harvest_cli

步骤 2: 配置Flutter项目

确保你的Flutter项目结构正确,并且pubspec.yaml文件中列出了所有依赖项。

步骤 3: 运行 license_harvest_cli

在你的Flutter项目根目录下,运行以下命令来收集许可证信息:

license_harvest collect --output licenses.md

这个命令会在项目根目录下生成一个名为licenses.md的文件,其中包含了所有依赖项的许可证信息。

步骤 4: 自动化收集(可选)

如果你希望在每次构建项目时自动收集许可证信息,可以将上述命令集成到你的构建脚本中。例如,你可以在Makefile中添加一个目标,或者在CI/CD管道中执行这个命令。

Makefile 示例

在项目的根目录下创建一个Makefile,并添加以下内容:

# Makefile

# 收集许可证信息
harvest-licenses:
	license_harvest collect --output licenses.md

然后,你可以通过运行make harvest-licenses来收集许可证信息。

注意事项

  • 确保你的环境变量中包含了Dart SDK的bin目录,这样你可以全局运行dartlicense_harvest命令。
  • license_harvest_cli可能会随着版本更新而改变其命令行接口,因此请参考其官方文档以获取最新信息。
  • 收集到的许可证信息可能需要根据你的具体需求进行格式化或进一步处理。

总结

虽然license_harvest_cli不是一个直接在Flutter应用代码中使用的插件,但它是一个非常有用的工具,可以帮助你管理和记录Flutter项目的依赖项许可证信息。通过将其集成到你的构建流程中,你可以确保每次构建时都能获得最新的许可证信息。

回到顶部