Index: sdk/lib/_internal/pub/lib/src/command/global_run.dart |
diff --git a/sdk/lib/_internal/pub/lib/src/command/global_run.dart b/sdk/lib/_internal/pub/lib/src/command/global_run.dart |
index 707fdea4c1592f5dbe612908a9c4868d19361f7d..839da464afbb3d2dfac295c3d36b045ac342c766 100644 |
--- a/sdk/lib/_internal/pub/lib/src/command/global_run.dart |
+++ b/sdk/lib/_internal/pub/lib/src/command/global_run.dart |
@@ -26,20 +26,22 @@ class GlobalRunCommand extends PubCommand { |
bool get allowTrailingOptions => false; |
String get description => |
"Run an executable from a globally activated package."; |
- String get usage => "pub global run <package> <executable> [args...]"; |
+ String get usage => "pub global run <package>:<executable> [args...]"; |
Future onRun() { |
if (commandOptions.rest.isEmpty) { |
- usageError("Must specify a package and executable to run."); |
+ usageError("Must specify an executable to run."); |
} |
- if (commandOptions.rest.length == 1) { |
- usageError("Must specify an executable to run."); |
+ if (!commandOptions.rest[0].contains(":")) { |
+ // TODO(rnystrom): Allow "foo" as a synonym for "foo:foo"? |
nweiz
2014/07/17 07:15:10
+1
|
+ usageError("Must specify a package from which to run the executable."); |
} |
- var package = commandOptions.rest[0]; |
- var executable = commandOptions.rest[1]; |
- var args = commandOptions.rest.skip(2); |
+ var parts = split1(commandOptions.rest[0], ":"); |
+ var package = parts[0]; |
+ var executable = parts[1]; |
+ var args = commandOptions.rest.skip(1).toList(); |
return globals.find(package).then((entrypoint) { |
return runExecutable(this, entrypoint, package, executable, args); |