Schritt für Schritt wird das alte Projekt gradle2.3.3 auf 4.0 aktualisiert

Das Projekt verwendet Androidannotations. Unabhängig davon, wie ich es erstellt habe, konnte es kürzlich nicht erstellt werden. Ich bin auf die offizielle Website gegangen und habe gesehen, dass dies der Fall ist.

AndroidAnnotations ist veraltet. Es wird keine weitere Entwicklung stattfinden.

Danke für all Ihre Unterstützung!

Leider bleibt die Versionsnummer immer bei 4.8.0.
Die Tatsache, dass sie es nicht geändert haben, scheint ihr eigenes Problem zu sein. Das Projekt wurde 2016 erstellt und Gradle ist immer noch 2.3. Aktualisieren Sie es einfach.

1.Entfernen Sie die Wohnung

apt „org.androidannotations:androidannotations:$AAVersion“
gewechselt zu
annotationProcessor „org.androidannotations:androidannotations:$AAVersion

App Gradle entfernen

Plugin anwenden: 'android-apt'

Und

passend {
    Argumente {
        androidManifestFile Variante.outputs[0]?.processResources?.manifestFile
        resourcesPackageName 'com.zhaomi.wisdomstudy'
}

Aus Projektgradle entfernen

Klassenpfad 'com.neenbedankt.gradle.plugins:android-apt:1.8'

2. HEAD „http://dl.bintray.com/populov/maven/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.3.72/kotlin-stdlib-jdk8-1.3.72.pom“ konnte nicht ausgeführt werden. Statuscode 502 vom Server erhalten: Bad Gateway

Fügen Sie es in das Projekt Gradle ein

maven { URL „http://dl.bintray.com/populov/maven“ }

Beachten Sie, dass der Agent von Alibaba Cloud hinzugefügt wurde und der Agent verwendet werden kann

maven { URL 'http://maven.aliyun.com/nexus/content/groups/public/' }
maven { URL 'http://maven.aliyun.com/nexus/content/repositories/jcenter' }
maven { URL 'http://maven.aliyun.com/nexus/content/repositories/google' }
maven { URL 'http://maven.aliyun.com/nexus/content/repositories/gradle-plugin' }

3. Der Wert der schreibgeschützten Eigenschaft „outputFile“ für ApkVariantOutputImpl_Decorated{apkData=Main{type=MAIN, fullName=xiaomiDebug, filter=[], versionCode=232, versionName=2.3.3.1}} vom Typ com.android kann nicht festgelegt werden .build.gradle.internal.api.ApkVariantOutputImpl.

Originalcode

applicationVariants.all { Variante ->
    variant.outputs.each { Ausgabe ->
        def Ausgabedatei = Ausgabe.Ausgabedatei
        if (outputFile != null && outputFile.name.endsWith('.apk')) {
            def fileName = outputFile.name.replace(".apk", "-${defaultConfig.versionName}.apk")
            output.outputFile = neue Datei(outputFile.parent, fileName)
        }
    }
}

Nach der Modifikation

applicationVariants.all { Variante ->
    variant.outputs.all { Ausgabe ->
        def Ausgabedatei = Ausgabe.Ausgabedatei
        if (outputFile != null && outputFile.name.endsWith('.apk')) {
            def fileName = outputFile.name.replace(".apk", "-${defaultConfig.versionName}.apk")
            Ausgabedateiname = Dateiname
        }
    }
}

4. Die minSdk-Version sollte nicht in der Android-Manifestdatei deklariert werden. Sie können die Version aus dem Manifest in die defaultConfig in der Datei build.gradle verschieben.

im Inneren manifestieren

<uses-sdk
    android:minSdkVersion="9"
    android:targetSdkVersion="29"
    tools:overrideLibrary="com.huawei.android.hms.base,com.huawei.android.hms.push, cn.jpush.android.thirdpush.meizu" />

Entfernen Sie die Zeilen „minsdkVersion“ und „targetSdkVersion“.

5.Alle Geschmacksrichtungen müssen nun zu einer benannten Geschmacksdimension gehören.

Fügen Sie es zu defaultConfig{} in App Gradle hinzu

flavourDimensions „versionCode“

6. XML konnte in /Users/zp_lxy/Desktop/project///app/src/main/AndroidManifest.xml nicht analysiert werden.
ParseError bei [row,col]:[37,5]

Nachdem ich es gefunden hatte, stellte ich fest, dass die im Manifest verwendete Kommentarmethode „//“ war, die derzeit nicht unterstützt wird. Bitte ändern Sie sie.

7.> Task :app:compileXiaomiDebugJavaWithJavac
Die folgenden Annotationsprozessoren sind nicht inkrementell: androidannotations-4.6.0.jar (org.androidannotations:androidannotations:4.6.0).
Stellen Sie sicher, dass alle Anmerkungsprozessoren inkrementell sind, um Ihre Build-Geschwindigkeit zu verbessern.

in der App Gradle

javaCompileOptions {
    annotationProcessorOptions {
        Argumente = [
                „androidManifestFile“: „$projectDir/src/main/AndroidManifest.xml“.toString()
        ]
    }
}

Das erneute Kompilieren ist kein Problem und wird erfolgreich ausgeführt.

Guess you like

Origin blog.csdn.net/u010055598/article/details/125479683