当前位置: 首页 > 知识库问答 >
问题:

无法执行 apkanalyzer

云欣嘉
2023-03-14

我正在尝试从命令行从Android SDK 工具运行 apkanalyzer。但是,它不会启动并打印以下异常:

Exception in thread "main" java.lang.IllegalStateException: The tools directory property is not set, please make sure you are executing apkanalyzer. Got /home/user/Programs/android-sdk-linux/tools
    at com.android.tools.apk.analyzer.ApkAnalyzerCli.getAaptInvokerFromSdk(ApkAnalyzerCli.java:266)
    at com.android.tools.apk.analyzer.ApkAnalyzerCli.main(ApkAnalyzerCli.java:123)

我的命令行是:

~/Programs/android-sdk-linux$ tools/bin/apkanalyzer apk summary ~/projects/mservice.apk

ANDROID_SDK_ROOT已设置。

以下是我的安装(sdkmanager - list):

Installed packages:=====================] 100% Computing updates...             
  Path                 | Version | Description                    | Location             
  -------              | ------- | -------                        | -------              
  build-tools;28.0.3   | 28.0.3  | Android SDK Build-Tools 28.0.3 | build-tools/28.0.3/  
  build-tools;29.0.2   | 29.0.2  | Android SDK Build-Tools 29.0.2 | build-tools/29.0.2/  
  platform-tools       | 29.0.6  | Android SDK Platform-Tools     | platform-tools/      
  platforms;android-28 | 6       | Android SDK Platform 28        | platforms/android-28/
  platforms;android-29 | 4       | Android SDK Platform 29        | platforms/android-29/
  tools                | 1.0.0   | Android SDK Tools 1            | tools/               

怎么了?

共有2个答案

柯乐童
2023-03-14

您的工具版本是版本非常旧。

它应至少大于26.0

使用

sdkmanager --install tools
罗凯
2023-03-14

< code>apkanalyzer希望位于不同的文件夹中,而不是它实际所在的文件夹中。这与< code>sdkmanager的错误相同,它也是< code>cmdline-tools的一部分。看到这个问题:解决方法是将< code >/path/to/cmdline-tools 移动到< code >/path/to/cmdline-tools/latest 中。

我通过谷歌搜索未设置工具目录属性找到了这一点

 类似资料:
  • 问题内容: 构建示例mvn项目后,我添加了依赖项和Java代码。 然后,我通过成功构建了JAR 。最后,尝试运行JAR时遇到错误。 问题答案: 您需要使用以下命令在清单中设置主类 取自这里。 编辑 如果您想将生成的jar与依赖项打包在一起,可以使用此 取自这里。

  • 构建一个示例mvn项目后,我添加了我的依赖项 然后,我通过成功地构建了我的JAR。最后,我在尝试运行JAR时遇到了一个错误。

  • 我使用了jQuery方法调用:,因此语法类似于: 问题: 当我单击image按钮时,它会给出以下错误消息:

  • 问题内容: 我在Hibernate尝试了简单的程序,并发现了一堆异常。 我不知道到底是什么问题。 我有三个课程-书籍,阅读器和使用。最后一个是将前两个绑定为一对多。 这是我的: 这是异常消息: 的摘要: DB上的所有表均已创建,但为空。一切都还好。有什么建议么? 如何解决这个麻烦? 问题答案: 在MySQL中, USING 是保留字。 因此,只需使用实体上的注释来重命名表即可。就像是 我假设您有一

  • 问题内容: 我正在使用hibernate3.6.7进行映射。我将连接部分设置为静态。我需要服务程序永远运行,另一个服务将调用该服务的某些方法来查询数据库。当我让该服务运行时,第一天工作良好,但是第二天我调用它时,它给出了: 似乎连接已关闭。有人可以给我一些建议吗? 非常感谢你:) 问题答案: 听起来好像数据库已关闭连接或某个网络设备已终止套接字。您可以通过多种方法来解决此问题: 您可以经常在连接上

  • 问题内容: 我正在使用Struts2&Hibernate并在使用字符串搜索数据时出现以下错误,但是在使用数字搜索时对我有用。我从豆类和豆类中的字符串类型的已定义的属性中获取此值。 下面我提供代码: 豆类: 对应: 错误: 问题答案: 之所以引发,是因为Hibernate生成的SQL查询的SQL语法错误。构建查询的方式是错误的,不应将值(尤其是字符串值)连接到结果查询,因为此类代码容易受到SQL注入