如何安装 bundletool?

How do I install bundletool?

虽然the docs提到

If you haven't already done so, download bundletool from the GitHub repository.

但是,repo 只包含一个 jar 文件。如何安装它以便我可以像文档示例一样使用 'bundletool' 命令 运行?

您可以创建别名(或 Windows 上的 doskey),例如

alias bundletool='java -jar bundletool-all.jar'

如果您安装了 brew,只需 运行 brew install bundletool,系统也会为您设置别名。它对我有用。

另一种方法是访问 Bundletool release page 并将 bundletool-all-[LAST-VERSION].jar 文件下载到某个目录中。

之后你可以 运行 它在目录调用:

java -jar bundletool-all-0.10.2.jar your_arguments_here

如果需要,将 jar 文件重命名为 bundletool.jar,然后 运行 它调用:

java -jar bundletool.jar your_arguments_here

如果你不想每次都调用 java,你可以为其创建一个别名,然后 运行 快速地:

alias bundletool='java -jar bundletool-all.jar'

bundletool your_arguments_here

在 mac 上,可以使用自制程序轻松完成

brew install bundletool

然后你可以运行这样的命令

bundletool install-apks --apks=release.apks

您可以使用下面的命令生成apks

bundletool build-apks --bundle=aab_path.aab --output=release.apks

以上命令生成 apks 文件,稍后可以提取该文件以提供各种 apk 文件。

要在 Windows 10 中制作 shortcut/alias,在 cmd 运行 中:

@doskey bundletool=java -jar <youPath>\bundletool-all.jar $*

您必须已将 Java 文件夹路径添加到系统环境变量或只是 google 它。

显然 Linux 您必须从以下位置下载 jar:https://github.com/google/bundletool/releases

然后是运行java -jar <PATH_TO_JAR> ...

为了简化您可以在 /usr/local/bin/ 中添加一个 bundletool 脚本

#!/usr/bin/env zsh
exec java -jar "$HOME/path/to/jar" "$@"

sudo chmod +x /usr/local/bin/bundletool

现在您可以运行bundletool随时随地

至于我,在 windows 上,我只是设置了 assocftype,这样 .jar 将以 java -jar

打开

首先我将 bundletool.someversion.jar 下载到 PATH env 下的某个文件夹中(这样它就会暴露)

以管理员身份打开cmd,然后用cmd assoc .jar=jarfile link .jar to jarfile (实际上可以是任何名字,make jarfile只是约定俗成的方法作为其他文件)

然后ftype jarfile=^%JAVA_HOME^%\bin\java.exe -jar %1 %~2

https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/ftype

然后我们可以执行 bundletool.someversion.jar 或任何 jar 直接将其打开为 java