gradle 索引< :>40处的字符非法:(请参阅:/values/values.xml)

qkf9rpyu  于 2022-11-24  发布在  其他
关注(0)|答案(2)|浏览(537)

由于此错误,我无法编译我的应用

com.android.aaptcompiler.ResourceCompilationException:
Resource compilation failed
(Failed to compile values resource file C:\Users\hesam\AndroidStudioProjects\RecognizeProject\app\build\intermediates\incremental\debug\mergeDebugResources\merged.dir\values\values.xml. 
Cause: java.nio.file.InvalidPathException: Illegal char <:> at index 40: com.recognize.app-mergeDebugResources-33:/values/values.xml).

我不知道发生了什么。
构建.gradle(模块)

plugins {
    id 'com.android.application'
    id 'com.google.gms.google-services'
    id 'com.google.firebase.crashlytics'
    id 'com.google.firebase.firebase-perf'
}

android {
    compileSdk 32

    defaultConfig {
        applicationId "com.recognize"
        minSdk 21
        targetSdk 32
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

dependencies {
    implementation platform('com.google.firebase:firebase-bom:30.0.1')
    implementation 'com.google.firebase:firebase-auth'
    implementation 'com.google.firebase:firebase-database'
    implementation 'com.google.firebase:firebase-storage'
    implementation 'com.google.firebase:firebase-analytics'
    implementation 'com.google.firebase:firebase-crashlytics'
    implementation 'com.google.firebase:firebase-perf'
    implementation 'androidx.appcompat:appcompat:1.4.1'
    implementation 'com.google.android.material:material:1.6.0'
    implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
    implementation 'io.github.yanndroid:oneui:2.4.0'
    implementation 'com.mikhaellopez:circularimageview:4.3.0'
    implementation 'com.github.bumptech.glide:glide:4.13.0'
    implementation 'io.github.chaosleung:pinview:1.4.4'
    annotationProcessor 'com.github.bumptech.glide:compiler:4.13.0'
    testImplementation 'junit:junit:4.13.2'
    androidTestImplementation 'androidx.test.ext:junit:1.1.3'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
}

构建.gradle(项目)

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        google()
        mavenCentral()
    }

    dependencies {
        classpath 'com.google.gms:google-services:4.3.10'
        classpath 'com.google.firebase:firebase-crashlytics-gradle:2.8.1'
        classpath 'com.google.firebase:perf-plugin:1.4.1'
    }
}

plugins {
    id 'com.android.application' version '7.2.0' apply false
    id 'com.android.library' version '7.2.0' apply false
}

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

我不知道我应该在这里放什么其他的信息。有没有可能是因为某个图书馆?
我最近添加了this library(在添加这个库之前,构建工作正常,但我添加了更多的东西,如字符串到strings.xml,新的Java类,布局等),但我不知道这是否是它的错,因为在GitHub上的问题没有人遇到这个问题....

qlfbtfca

qlfbtfca1#

我在开发一个库的时候也遇到了同样的问题,经过几次尝试,我发现这个问题与attrs有关。在库项目的attrs.xml文件中有一个属性“colorScheme”:

<declare-styleable name="GridColorPicker">
   <attr name="colorScheme" format="string" />
   <attr name="selectorColor" format="color" />
</declare-styleable>

但在生成的\merged.dir\values\values. xml文件中搜索后,发现其中还有另一个“colorScheme”:

<enum name="standard" value="0"/>
<enum name="wide" value="1"/>
<enum name="icon_only" value="2"/>
</attr>
<attr format="reference" name="colorScheme">
<enum name="dark" value="0"/>
<enum name="light" value="1"/>
<enum name="auto" value="2"/>

所以我把我的“colorScheme”改成了一个独特的,问题就解决了。
我认为您可以联系该库的作者,或者创建该库,然后自己尝试这些步骤。

khbbv19g

khbbv19g2#

我的attrs.xml文件是

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <attr name="state_error"  />   <======HERE WAS THE PROBLEM
    <declare-styleable name="ValueEditor">
       <attr name="nameShown" format="string"/>
       <... other definitions />
    </declare-styleable>
</resources>

一个名为state_error的属性导致了这个问题。2一定是从一些复制粘贴源代码中找到的,因为当我删除它的时候,问题就消失了。
这个问题发生在每一个比这个更大的实现"com.google.android. material:material:1.6.0-alpha02"上

相关问题