失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > android studio命令行差错 Android Studio构建正常 Gradle命令行失败

android studio命令行差错 Android Studio构建正常 Gradle命令行失败

时间:2023-11-30 03:42:22

相关推荐

android studio命令行差错 Android Studio构建正常 Gradle命令行失败

我已经将一个应用程序从Eclipse移植到Android Studio,实现了我所需的功能,并允许它在Android Studio中工作。由于口味的数量,我宁愿使用命令行Gradle来构建它。但是,当我运行以下命令来构建发布的APK时

gradlew.bat assembleRelease

我收到以下错误:

FAILURE: Build failed with an exception.

* Where:

Build file 'C:\whatever\build.gradle' line: 1

* What went wrong:

A problem occurred evaluating project ':MyCompany'.

> java.lang.UnsupportedClassVersionError: com/android/build/gradle/AppPlugin : Unsupported major.minor version 52.0

* Try:

Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

我已经使用--stacktrace和--debug运行了,它实际上没有提供任何其他信息,只是指出错误与build.gradle的第一行有关:

apply plugin: 'com.android.application'

我已根据对此错误的其他stackoverflow响应尝试以下操作:

升级到JavaVersion.VERSION_1_8

为Jack添加了build.gradle(这减慢了所有速度,但是即使弃用了1.8,它也是必需的?)

增加了堆(org.gradle.jvmargs=-Xmx4096m)和dex(javaMaxHeapSize "4g")的内存。

我在跑步 Android Studio 2.3.3

这是我的build.gradle档案。为了节省空间,我只留下了两种口味,并重命名了一些名称以保护无辜者。我留在依赖项中,以防可能是问题所在?唯一有趣的是,我正在重命名APK并将其推送到另一个文件夹,但是当我直接从Android Studio中运行发布版本时,这一切都可以正常工作。的build.gradle:

apply plugin: 'com.android.application'

apply plugin: 'io.fabric'

buildscript {

repositories {

maven { url 'https://maven.fabric.io/public' }

}

dependencies {

classpath 'io.fabric.tools:gradle:1.+'

}

}

repositories {

maven { url 'https://maven.fabric.io/public' }

}

android {

signingConfigs {

config {

keyAlias 'whatever'

keyPassword 'imnotgoingtotellyou'

storeFile file('C:/whereever/mycompany.keystore')

storePassword 'yeps'

}

}

compileSdkVersion 25

buildToolsVersion '25.0.3'

defaultConfig {

jackOptions {

enabled true

additionalParameters('jack.incremental': 'true')

}

applicationId "com.mycompany.default"

minSdkVersion 14

targetSdkVersion 23

versionCode 44

versionName "2.1.44"

compileOptions {

sourceCompatibility JavaVersion.VERSION_1_8

targetCompatibility JavaVersion.VERSION_1_8 }

signingConfig signingConfigs.config

}

dexOptions {

javaMaxHeapSize "4g"

}

buildTypes {

release {

minifyEnabled false

proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'

signingConfig signingConfigs.config

}

}

productFlavors.whenObjectAdded { flavor ->

flavor.ext.set('directoryPath', '')

flavor.ext.set('apkName', '')

}

productFlavors {

Flavor1 {

signingConfig signingConfigs.config

directoryPath = 'flavor1'

}

Flavor2 {

applicationId 'com.mycompany.flavor2'

signingConfig signingConfigs.config

directoryPath = 'flavor2'

}

applicationVariants.all { variant ->

variant.outputs.each { output ->

def path = "C:/AndroidBuilds/MyBuild.Build/" + variant.productFlavors[0].directoryPath + "/"

logger.error("Path = " + path)

def SEP = "-"

def apkName = variant.productFlavors[0].apkName

def flavor = variant.productFlavors[0].name

if (apkName != '')

flavor = apkName;

def version = variant.versionCode

def newApkName = path + version + SEP + flavor

logger.error("newApkName = " + newApkName)

output.outputFile = new File(newApkName + ".apk")

}

}

}

dependencies {

compile project(':androidpdfview100')

compile 'com.android.support:support-v13:25.3.1'

compile 'com.google.code.gson:gson:2.7'

compile 'joda-time:joda-time:2.5'

compile 'com.google.android.gms:play-services-maps:11.0.4'

compile files('libs/httpmime-4.2.5.jar')

compile files('libs/itextg-5.4.4.jar')

compile files('libs/js.jar')

compile files('libs/logentries-android-2.1.1.jar')

compile files('libs/universal-image-loader-1.8.6.jar')

compile files('libs/xmlworker-5.4.4.jar')

compile files('libs/zbar.jar')

compile('com.crashlytics.sdk.android:crashlytics:2.6.8@aar') {

transitive = true;

}

}

更新

项目结构如下所示:

当我从Eclipse移植代码时,它是由Android Studio自动生成的:

当您深入研究应用程序本身时,它看起来像这样:

如果觉得《android studio命令行差错 Android Studio构建正常 Gradle命令行失败》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。