Què passa en actualitzar a Android Studio Panda
Android Studio Panda (versió 4) arriba amb un conjunt actualitzat de plugins integrats, i un d'aquests canvis trenca el desenvolupament amb Flutter d'una manera especialment frustrant: l'IDE deixa de reconèixer el teu projecte Flutter del tot. No el pots executar, no el pots depurar, simplement no funciona.
La causa arrel és que el plugin de Dart (versió 505.0.0) ara requereix que el plugin com.redhat.devtools.lsp4j estigui instal·lat, però Android Studio Panda no l'inclou per defecte. Com que Dart no pot carregar-se, el plugin de Flutter es queda sense base sobre la qual funcionar, i tota la cadena d'eines falla en silenci.
L'error: què veus al panell de plugins
Si obres Settings → Plugins → Installed, veuràs el plugin de Dart marcat en vermell amb el missatge següent:
Requires plugin 'com.redhat.devtools.lsp4j'
to be installedPer això el projecte ni tan sols carrega, no és un error de compilació ni un problema de Gradle, és el propi plugin de Dart que està desactivat per manca d'una dependència. Mentre lsp4j no estigui instal·lat, res relacionat amb Flutter funcionarà.
Com solucionar-ho
La solució és ràpida:
1. Obre el panell de plugins. Ves a Settings → Plugins i canvia a la pestanya Marketplace.
2. Cerca i instal·la lsp4j. Busca Red Hat Commons o directament com.redhat.devtools.lsp4j. Instal·la'l i reinicia l'IDE.
3. Com a alternativa, actualitza els plugins de Flutter i Dart. De vegades, l'actualització que publica l'equip de Flutter en resposta a aquest problema ja inclou la dependència o n'ajusta el requisit. Comprova a la pestanya Installed si hi ha actualitzacions pendents per a Flutter i Dart i aplica-les.
4. Invalida les memòries cau i reinicia. Després de qualsevol canvi als plugins, ves a File → Invalidate Caches → Invalidate and Restart per assegurar-te que l'IDE recull el nou estat correctament.
Després de reiniciar, el plugin de Dart hauria de carregar-se sense problemes, l'avís en vermell haurà desaparegut i el teu projecte Flutter tornarà a ser reconegut i executable.
Per què passa això
A partir de la versió 505.0.0, el plugin de Dart delega part de la seva integració amb el servidor de llenguatge a la llibreria lsp4j, mantinguda per Red Hat com a plugin independent. En versions anteriors d'Android Studio aquesta dependència venia integrada o no era necessària, de manera que l'actualització agafa molts desenvolupadors per sorpresa.
El plugin de Flutter depèn completament que Dart estigui actiu, de manera que quan Dart falla en carregar-se, Flutter també desapareix en silenci: sense detecció del projecte, sense selector de dispositiu, sense res.
Una nota sobre les actualitzacions d'Android Studio
Les versions majors d'Android Studio sovint introdueixen canvis en les dependències dels plugins que els equips de Flutter i Dart triguen uns dies a assumir. Abans d'actualitzar, val la pena revisar la pàgina d'issues de Flutter a GitHub per veure si hi ha problemes de compatibilitat coneguts amb la nova versió de l'IDE. Uns minuts de lectura poden estalviar molt de temps de depuració.