Command class
Comprehensive custom build command implementation.
Extends the base Commander
class to provide a highly flexible and configurable
build workflow supporting arbitrary binary types, user-defined arguments, and
integration with external build systems. This enables advanced customization
for multi-platform targets and specialized deployment scenarios.
Key features:
- Universal binary output support (APK, AAB, IPA, desktop, web, custom formats)
- Flexible argument passing for custom build tools and workflows
- Multi-platform compatibility (Android, iOS, desktop, web)
- Integration with CI/CD pipelines and external toolchains
- Advanced configuration management and artifact output control
- Extensible foundation for future enhancements and specialized requirements
Example usage:
final command = Command();
final result = await command.run();
if (result == 0) {
print('Custom build completed successfully');
} else {
print('Build failed with exit code: $result');
}
Constructors
Properties
-
aliases
→ List<
String> -
Alternate names for this command.
no setterinherited
- argParser → ArgParser
-
Provides the argument parser for custom build configuration.
no setteroverride
- argResults → ArgResults?
-
The parsed argument results for this command.
no setterinherited
- category → String
-
The command's category.
no setterinherited
- description → String
-
Provides a comprehensive description of the custom build command.
no setteroverride
- globalResults → ArgResults?
-
The parsed global argument results.
no setterinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
-
Whether or not this command should be hidden from help listings.
no setterinherited
- invocation → String
-
A single-line template for how to invoke this command (e.g.
"pub get
package"
).no setterinherited - logger → ColorizeLogger
-
The logger instance for logging messages with color support.
no setterinherited
- name → String
-
Returns the command identifier used in CLI invocation.
no setteroverride
- parent → Command?
-
The command's parent command, if this is a subcommand.
no setterinherited
- runner → CommandRunner?
-
The command runner for this command.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
subcommands
→ Map<
String, Command> -
An unmodifiable view of all sublevel commands of this command.
no setterinherited
-
suggestionAliases
→ List<
String> -
Alternate non-functional names for this command.
no setterinherited
- summary → String
-
A short description of this command, included in
parent
'sCommandRunner.usage
.no setterinherited - takesArguments → bool
-
Whether or not this command takes positional arguments in addition to
options.
no setterinherited
- usage → String
-
Generates a string displaying usage information for this command.
no setterinherited
-
An optional footer for
usage
.no setterinherited
Methods
-
addSubcommand(
Command command) → void -
Adds
Command
as a subcommand of this.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
printUsage(
) → void -
Prints the usage information for this command.
inherited
-
run(
) → Future? -
Executes the custom application build process.
override
-
toString(
) → String -
A string representation of this object.
inherited
-
usageException(
String message) → Never -
Throws a
UsageException
withmessage
.inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited