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

Cordova:未指定buildToolsVersion is)

贺宜修
2023-03-14

我在运行cordova build android--version时出现以下错误

Failed to notify ProjectEvaluationListener.afterEvaluate(), but primary configuration failure takes precedence.
java.lang.IllegalStateException: buildToolsVersion is not specified.

似乎没有指定buildToolsVersion。

这是科尔多瓦使用的Android_Home。

ANDROID_HOME=/usr/local/Caskroom/android-platform-tools/latest

基本上,我试图用下图来改变这条路径,但它并没有改变科尔多瓦构建的路径。

我正在使用下面的命令来更改路径。

export ANDROID_HOME=/Users/admin/Library/Android/sdk
export PATH=$ANDROID_HOME/platform-tools:$PATH
export PATH=$ANDROID_HOME/tools:$PATH

source .bash_profile
echo $ANDROID_HOME

但这并没有改变科尔多瓦的道路。

编辑:我还尝试在科尔多瓦中删除和添加Android平台。

编辑2:如果我使用同一个终端,则android_home的路径会更改。看起来bashrc没有更新。

但现在我遇到了不同的错误,构建失败了。

platforms/android/src/org/apache/cordova/file/FileUtils.java:15: error: <identifier> expected

我已经安装了sdk构建工具版本19.1.0、23.0.1和26.0,但仍然出现错误。

编辑3:建立渐变

apply plugin: 'com.android.application'

buildscript {
    repositories {
        mavenCentral()
        jcenter()
    }

    // Switch the Android Gradle plugin version requirement depending on the
    // installed version of Gradle. This dependency is documented at
    // http://tools.android.com/tech-docs/new-build-system/version-compatibility
    // and https://issues.apache.org/jira/browse/CB-8143
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.3'
    }
}

// Allow plugins to declare Maven dependencies via build-extras.gradle.
allprojects {
    repositories {
        mavenCentral();
        jcenter()
    }
}

task wrapper(type: Wrapper) {
    gradleVersion = '2.14.1'
}

// Configuration properties. Set these via environment variables, build-extras.gradle, or gradle.properties.
// Refer to: http://www.gradle.org/docs/current/userguide/tutorial_this_and_that.html
ext {
    apply from: 'CordovaLib/cordova.gradle'
    // The value for android.compileSdkVersion.
    if (!project.hasProperty('cdvCompileSdkVersion')) {
        cdvCompileSdkVersion = null;
    }

编辑4:现在我的Android和Java路径如下。

ANDROID_HOME=/Users/admin/Library/Android/sdk
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home

当我运行cordova build android时,我收到以下错误。

com.sun.tools.javac.parser.JavacParser.classOrInterfaceOrEnumDeclaration(JavacParser.java:3226)


FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':compileDebugJavaWithJavac'.
> Compilation failed; see the compiler error output for details.

共有1个答案

慕永年
2023-03-14

查看Cordova Android GitHub存储库并搜索buildToolsVersion,您将在build.gradle中看到AndroidbuildToolsVersion当前设置为23.0.1

点击上面的搜索链接,尝试安装文件< code>build.gradle中显示的Android构建工具版本。

 类似资料:
  • Apache Cordova 是跨平台应用开发解决方案,而 PhoneGap 就是 Cordova 的原始版本和最流行的发布。 包括: 使用 HTML, CSS 和 JS 开发移动端应用 一次编码支持多平台编译,其中包括 Amazon Fire OS、Android、BlackBerry、Firefox OS、iOS、Ubuntu、Windows Phone、Windows 等 免费且开源 书中所

  • 我们有一个NetCore2.1API项目。我们使用请求头来检索API密钥,并根据数据库检查该密钥是否与期望的密钥之一匹配。如果确实如此,那么我们允许请求继续,否则我们希望发回未经授权的响应。 我们的startup.cs 我们的APIKeyAuthHandler.cs 还有我们的controller.cs 当有效密钥存在时,一切正常,但当它不存在时,将引发500个内部错误,原因是No authent

  • 考虑以下C程序: null 访问易失性对象、修改对象、修改文件,或者调用执行那些操作中的任何操作的函数都是副作用,它们是执行环境状态的改变。表达式的计算通常包括值计算和副作用的启动。用于lvalue表达式的值计算包括确定指定对象的标识。 Sequenced before是单线程执行的计算之间的非对称、传递、成对关系,它导致这些计算之间的部分顺序。给定任意两个评价A和B,如果A排序在B之前,那么A的

  • 问题内容: 我正在运行AnchorCMS,而我刚刚升级到0.8版。尝试运行安装程序时,出现“未指定输入文件”错误。我相信这很可能是.htaccess问题,但是我不确定应该使用什么正确的设置。 我的网站可以在这里找到。 我的.htaccess设置为: 如果有帮助,我还将GoDaddy用作托管服务提供商。 问题答案: 未 指定输入文件 是由于服务器上PHP的实现而向您显示的消息,在这种情况下,这表示C

  • 现在我的plugin.xml中包含了以下内容: 我有一个钩子,它接受命令行参数,并用参数中提供的包路径/名称替换plugin.xml中的$to_be_defined_package。 下面是ModifyPluginXml.js钩子: 我遇到的问题是cordova似乎并不关心新的plugin.xml。它仍然使用旧的plugin.xml的框架标记。 在generate build.gradle文件中,

  • 我正在开发一个集成了Firebase的ionic 1应用程序。我想添加google plus身份验证并使用cordoa-plugin-googleplus。在执行函数时,我收到错误-“TypeError: Cannot read属性'googleplus'of未定义” 我看到这可能是因为插件没有正确安装。我删除并再次添加插件,但仍然收到相同的错误。 离子信息 我提到了这篇文章,更新科尔多瓦和And