# Gradle task assembleRelease failed with exit code 1: Execution failed for task ':app:signReleaseBundle' > Key was created with errors: Key not found: /path/to/keystore

- **ID:** `flutter/gradle-task-assemble-release-signature-mismatch`
- **Domain:** flutter
- **Category:** build_error
- **Verification:** ai_generated
- **Fix Rate:** 85%

## Root Cause

The keystore file specified in build.gradle for signing the release bundle does not exist at the given path.

## Version Compatibility

| Version | Status | Introduced | Deprecated |
|---------|--------|------------|------------|
| Flutter 3.10 | active | — | — |
| Android Gradle Plugin 8.1 | active | — | — |
| Gradle 8.2 | active | — | — |

## Workarounds

1. **Verify the keystore path in android/app/build.gradle and ensure the file exists. Example: storeFile file('../keystores/release.jks') should point to an existing file. Move the keystore to the correct location or update the path.** (90% success)
   ```
   Verify the keystore path in android/app/build.gradle and ensure the file exists. Example: storeFile file('../keystores/release.jks') should point to an existing file. Move the keystore to the correct location or update the path.
   ```
2. **If using environment variables, check that the variable is set correctly. Run 'echo $KEYSTORE_PATH' in terminal to confirm. In build.gradle, use storeFile file(System.getenv('KEYSTORE_PATH')).** (85% success)
   ```
   If using environment variables, check that the variable is set correctly. Run 'echo $KEYSTORE_PATH' in terminal to confirm. In build.gradle, use storeFile file(System.getenv('KEYSTORE_PATH')).
   ```
3. **Generate a new keystore if the old one is lost: 'keytool -genkey -v -keystore release.jks -keyalg RSA -keysize 2048 -validity 10000 -alias release' and update build.gradle accordingly.** (95% success)
   ```
   Generate a new keystore if the old one is lost: 'keytool -genkey -v -keystore release.jks -keyalg RSA -keysize 2048 -validity 10000 -alias release' and update build.gradle accordingly.
   ```

## Dead Ends

- **** — The keystore path is hardcoded and cleaning the build does not create the keystore file. (95% fail)
- **** — The error is about the file path, not the password; password changes are irrelevant. (85% fail)
- **** — The keystore file is not inside the build folder; it's a separate file that must exist externally. (90% fail)
