sentry-java: Task :persistSentryProguardUuidsForReleaseArm64-v8a-release FAILED (AS:3.3 ABP:3.3.0 Gradle:4.10.1 sentry-android-gradle-plugin:1.7.16)

Project was working fine with sentry plugin before upgrade to AS 3.3 and the matching dev tools.

Now I have more build variants than just release/debug which I had before.

When I build a release version of the APK I get “Task :persistSentryProguardUuidsForReleaseArm64-v8a-release FAILED”. The plugin is trying to run command:

"[user]\\AppData\\Local\\Temp\\.sentry-cli8452420388174734644.exe" "upload-proguard" "--android-manifest" "[project_root]\\build\\intermediates\\merged_manifests\\release\\AndroidManifest.xml" "--write-properties" "[project_root]\\build\\intermediates\\merged_assets\\release\\mergeReleaseAssets\\out/sentry-debug-meta.properties" "[project_root]\\build\\outputs\\mapping\\release\\mapping.txt"

but there is no "[project_root]\\build\\intermediates\\merged_manifests\\release\\AndroidManifest.xml", instead there is "[project_root]\\build\\intermediates\\merged_manifests\\release\\arm64-v8a\\AndroidManifest.xml". The task fails with “error: The system cannot find the file specified. (os error 2)”.

I am running the build on Windows 10.

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Reactions: 1
  • Comments: 46 (3 by maintainers)

Most upvoted comments

Sorry for the late answer…

I built a snapshot with this fix and it worked for me.

@bruno-garcia Great, thank you

@bretthoerner on top of this, if you go back through the history of this class you will see that that way of retrieving the manifest path was already used some releases ago. I would say this is safe enough.

But it’s not always safe to do that, is it? We need a safe way to know when we should/shouldn’t add the ABI. I guess we just check the existence of the directory? Is anyone able to make a PR that works for their project?

I am seeing a Unix path separator here

It is weird, but this has worked for our Windows users. I’d like to fix it to use File API though.