-
Notifications
You must be signed in to change notification settings - Fork 433
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Execution failed for task ':alibrary:generateRJava' #61
Comments
I just ran into the same problem. Update: I'm not sure that exploded-aar folder is ever created, maybe it's moved or something's changed? (Studio version 2.3, Gradle 3.3) |
I think that I found a solution for this issue. I figure out the new default configuration for Android Studio 2.3: (android.enableBuildCache=true). When a change it to false in gradle.properties it stops in line 356: Error:Note: Some input files use or override a deprecated API.
Fix |
Well I'm getting closer. Setting android.enableBuildCache=false in gradle.properties does make the exploded-aar folder appear. I then had to change the path in embedJavaJars() from "$aarPath/jars/classes.jar" to "$aarPath/classes.jar", and skip the call to embedManifests() - as that was crashing, and I don't need to merge the manifests in this case. With that (still with the manual unzip which I'll have to fix later), it looks like I now have a merged aar file. (Though I still have problems building my app with it....) |
Update: R$... classes from the sub-library were missing from the output aar. After manually copying them from build\intermediates\bundles\release\libs<sub-library>.jar into classes.jar within the output aar, I am now able to compile the aar into a separate apk project. So I now just need to figure out how to replace the two manual steps, i.e.
|
It could help you: #copy file sample
task copyHeaders {
copy {
from("${srcLibs}")
into "../../Classes"
}
dependsOn ':app:preBuild'
} #unzip file sample
task unzip {
copy {
def zipFile = file("${binLibs}/lib.aar")
def outputDir = file("../../libs")
from zipTree(zipFile)
into outputDir
}
dependsOn ':app:preBuild'
} |
it seems that it does not work with maven dependencies. @JohnSFR |
Update: I think that this issue is related to #62 . I do not know why. When "Flavors" is in debug in Android Studio, gradle makes other intermediates build folder ({libary dir}/build/intermediates/bundles/debug) and it seems to use it. When i change the "Flavors" to release, it uses the correct one ({libary dir}/build/intermediates/bundles/default). And now the fat-aar works. I figure out this curious issue on Androis's project |
After android gradle plugin 2.3.0 was released, something about file path has been changed. AFAIK, there are 2 points below:
I have created a new repo to try to support all these. If the build script is really puzzle you, you can try mine. |
I have the same question as you 。finally I change gradle to 2.3.1 to 2.2.3 solve it |
i follow your tips,embedded in library and compile the library in app
in library
in app
gradle show this:
Error:FAILURE: Build failed with an exception.
Where:
Script 'H:\android_project\BaseRecyclerViewAdapterHelper-master\alibrary\fat-aar.gradle' line: 218
What went wrong:
Execution failed for task ':alibrary:generateRJava'.
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
The text was updated successfully, but these errors were encountered: