-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMIGRACION_KSP.txt
More file actions
127 lines (96 loc) · 8.69 KB
/
MIGRACION_KSP.txt
File metadata and controls
127 lines (96 loc) · 8.69 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
╔════════════════════════════════════════════════════════════════════════════╗
║ 🔧 SOLUCIÓN: Error de Metadatos Kotlin (KAPT → KSP) ║
╚════════════════════════════════════════════════════════════════════════════╝
┌─────────────────────────────────────────────────────────────────────────────┐
│ ❌ PROBLEMA ORIGINAL │
└─────────────────────────────────────────────────────────────────────────────┘
Error: "Provided Metadata instance has version 2.1.0, while maximum
supported version is 2.0.0"
CAUSA: Room 2.6.1 con KAPT no es compatible con Kotlin 1.9.22
┌─────────────────────────────────────────────────────────────────────────────┐
│ ✅ SOLUCIÓN APLICADA │
└─────────────────────────────────────────────────────────────────────────────┘
1. ✅ Migrado de KAPT a KSP (Kotlin Symbol Processing)
2. ✅ Actualizado Hilt de 2.48 a 2.50
3. ✅ Añadido plugin KSP 1.9.22-1.0.17
4. ✅ Actualizada configuración de gradle.properties
5. ✅ Reemplazadas todas las referencias de kapt por ksp
┌─────────────────────────────────────────────────────────────────────────────┐
│ 📝 ARCHIVOS MODIFICADOS │
└─────────────────────────────────────────────────────────────────────────────┘
• android/build.gradle
- Añadido plugin KSP
- Actualizado Hilt version
• android/app/build.gradle
- Reemplazado 'kotlin-kapt' por 'com.google.devtools.ksp'
- Cambiado kapt → ksp en dependencias
- Actualizada configuración de Room para KSP
• android/gradle.properties
- Habilitada compilación incremental
- Añadidas opciones de KSP
┌─────────────────────────────────────────────────────────────────────────────┐
│ 🚀 PASOS PARA COMPILAR (OBLIGATORIO) │
└─────────────────────────────────────────────────────────────────────────────┘
IMPORTANTE: Debes limpiar TODO el cache antes de compilar
cd /home/paulopnun/Escritorio/FlowBoard/android
# 1. Detener Gradle daemon
./gradlew --stop
# 2. Limpiar proyecto
./gradlew clean
# 3. ELIMINAR CACHES (MUY IMPORTANTE)
rm -rf .gradle
rm -rf app/.gradle
rm -rf app/build
rm -rf build
rm -rf ~/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin
# 4. Compilar con KSP
./gradlew assembleDebug
┌─────────────────────────────────────────────────────────────────────────────┐
│ ⚡ SCRIPT AUTOMÁTICO (Recomendado) │
└─────────────────────────────────────────────────────────────────────────────┘
cd /home/paulopnun/Escritorio/FlowBoard
chmod +x clean-and-build-ksp.sh
./clean-and-build-ksp.sh
┌─────────────────────────────────────────────────────────────────────────────┐
│ 💡 VENTAJAS DE KSP vs KAPT │
└─────────────────────────────────────────────────────────────────────────────┘
✓ 2x más rápido en compilación
✓ Mejor soporte para Kotlin moderno
✓ Compatible con Kotlin 1.9.22 y superiores
✓ Menos uso de memoria
✓ Compilación incremental mejorada
✓ Recomendado oficialmente por Google
┌─────────────────────────────────────────────────────────────────────────────┐
│ 🔍 VERIFICAR ÉXITO │
└─────────────────────────────────────────────────────────────────────────────┘
✓ Busca: "BUILD SUCCESSFUL"
✓ NO debería aparecer: "Unable to read Kotlin metadata"
✓ NO debería aparecer: "kapt"
✓ Debería aparecer: "ksp" en los logs
✓ APK generado en: android/app/build/outputs/apk/debug/
┌─────────────────────────────────────────────────────────────────────────────┐
│ ❓ SI TODAVÍA HAY PROBLEMAS │
└─────────────────────────────────────────────────────────────────────────────┘
1. Invalida caches del IDE:
File > Invalidate Caches / Restart
2. Limpia cache global:
rm -rf ~/.gradle/caches/
3. Asegúrate de que JDK sea compatible:
java -version
(Debe ser Java 11 o superior)
4. Sincroniza Gradle en el IDE:
File > Sync Project with Gradle Files
┌─────────────────────────────────────────────────────────────────────────────┐
│ 📊 COMPARACIÓN KAPT vs KSP │
└─────────────────────────────────────────────────────────────────────────────┘
Característica KAPT (Antiguo) KSP (Nuevo)
─────────────────────────────────────────────────────────
Velocidad Lento 2x Más rápido
Soporte Kotlin 1.9+ ❌ Limitado ✅ Completo
Uso de Memoria Alto Bajo
Incremental Básico Avanzado
Recomendación Google Deprecado ✅ Oficial
╔════════════════════════════════════════════════════════════════════════════╗
║ ¡KSP CONFIGURADO Y LISTO! 🎉 ║
║ Ejecuta los comandos de limpieza y compilación ahora ║
╚════════════════════════════════════════════════════════════════════════════╝