Подтвердить что ты не робот

Java.lang.NullPointerException(нет сообщения об ошибке) APK building

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        maven {
            url "https://plugins.gradle.org/m2/"
        }
        jcenter()
    }
    dependencies {
        classpath "gradle.plugin.me.tatarka:gradle-retrolambda:3.3.0"
        classpath 'com.android.tools.build:gradle:2.2.1'
    }
}
allprojects {
    repositories {
        jcenter()
        mavenCentral()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

Файл приложения:

apply plugin: 'me.tatarka.retrolambda'
apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "24.0.3"
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    defaultConfig {
        applicationId "it.univpm.gruppoids.iotforemergencyandnavigation"
        minSdkVersion 16
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"

        jackOptions {
            enabled true
        }
    }



    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}
dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.4.0'
    compile 'com.android.support:design:23.4.0'
    compile 'com.android.support:support-v4:23.4.0'
    compile 'com.journeyapps:zxing-android-embedded:[email protected]'
    compile 'com.google.zxing:core:3.2.1'
    compile 'org.jgrapht:jgrapht-core:1.0.0'
}

Когда я пытаюсь создать APK, это показывает мне: Ошибка: возникла проблема при настройке проекта: app.

java.lang.NullPointerException(нет сообщения об ошибке)

Это проблема с версиями? или с лампами? кто-то может мне помочь?

4b9b3361

Ответ 1

У меня возникла та же проблема после добавления:

compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}

Это было потому, что моя версия Java по умолчанию была 10:

$ java -version
java version "10.0.1" 2018-04-17

После изменения на 1.8 (с sudo update-alternatives --config java) проблема была исправлена.

Ответ 2

В наши дни у меня была такая же проблема. Я обнаружил, что это может быть вызвано версией gradle. После изменения версии до версии 2.1.0 проблема исчезла.

dependencies {
        classpath 'com.android.tools.build:gradle:2.1.0'
    }

Я не уверен, что это сработает для вас.

Ответ 3

Добавьте это в свой модуль приложения build.gradle:

lintOptions {
    checkReleaseBuilds false
}

Ответ 4

см. эту другую проблему: хотя это указано в документации Retrolambda, вы не должны указывать версию JAVA версии 1.8 при использовании Retrolambda. Поэтому больше не требуется устанавливать поддержку гнезда True. Это сработало для меня.

Ответ 5

Android компилируется по умолчанию с Java 7, но ваш проект может использовать некоторые функции Java 8. Если вы недавно переключились с Oracle JDK на Open JDK, убедитесь, что вы используете Java 8. В вашем терминале, если вы запускаете java -version, вывод должен выглядеть примерно так:

openjdk version "1.8.0_222"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_222-b10)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.222-b10, mixed mode)

Ответ 6

Просто удалите свой проект, содержащий папку .gradle и перезапустите студию Android. он протестирован и одобрен на страницах разработчиков Google. Он работает на 100%.