Reputation: 231
I can't compile my app because of this error
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).
and I don't know what's going on...
build.gradle (module)
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'
}
build.gradle (project)
// 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
}
I don't know what other information I should put here. Is it possible that it's because of some library?
I recently added this library (build works before adding this lib but i was adding more stuff like strings to strings.xml, new Java classes, Layouts etc.) but I don't know if it's its fault because in Issues on GitHub nobody had this problem....
Upvotes: 21
Views: 10607
Reputation: 2365
I just ran into this as well. From all the searching, it seems to most often occur in attrs.xml
In order to actually find where your problem is, perform the following steps.
<?xml version="1.0" encoding="utf-8"?>
<resources>
</resources>
Some things I ran into:
Upvotes: 4
Reputation: 6368
I had this when i named an attribute 'font':
<declare-styleable name="Scale">
<attr name="name" />
<attr name="colour" />
<attr name="direction" format="string" />
<attr name="font" format="string" /> // **AARGH!
<attr name="fontSize" format="float" />
<attr name="every" format="float" />
<attr name="radius" format="float" />
</declare-styleable>
Renaming it to fontName fixed it:
<attr name="fontName" format="string" /> // Nice
Upvotes: 2
Reputation: 11
My attrs.xml file was
<?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>
the attr with name state_error was causing the problem. Must have been there from some copy-paste source code because when I removed it the problem disappeared.
The problem occurred with every implementation 'com.google.android.material:material:1.6.0-alpha02' bigger than that
Upvotes: 1
Reputation: 151
I'm facing the same problem while developing a library, after several tries I found this related to the attrs. There is a property "colorScheme" in the attrs.xml file of the library project:
<declare-styleable name="GridColorPicker">
<attr name="colorScheme" format="string" />
<attr name="selectorColor" format="color" />
</declare-styleable>
But after search in the generated \merged.dir\values\values.xml file, it has another "colorScheme" in it:
<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"/>
So I changed my "colorScheme" to a unique one the problem was solved.
I think you can contact the library's author or fork the library and try these steps yourself.
Upvotes: 14