react-native-android - new - react-native run-android
Reaccionar nativo: proyecto de Android no encontrado. ¿Quizás ejecutar primero react-native android? (9)
Como complemento, en el caso de que no se encuentre el comando react-native, debe instalar la CLI react-native:
npm install -g react-native-cli
Luego puede seguir los pasos que la gente dijo anteriormente.
Más detalles: react-native: comando no encontrado
Tuve un problema en mi proyecto React-Native que funcionaba bien antes, pero de repente dejó de funcionar. Cada vez que usé el comando:
react-native run-android
Estaba recibiendo un error :
Proyecto de Android no encontrado. ¿Quizás ejecutar primero react-native android?
Traté de correr:
react-native android
Pero decía:
Unrecognized command ''android'' Run react-native --help to see list of all available commands
Después de intentarlo:
D:/ProjectRoot/ReactNativeProjects/AwesomeProject>react-native eject
El error devuelto fue:
Escaneo de carpetas para enlaces simbólicos en D: / ProjectRoot / ReactNativeProjects / AwesomeProject / node_modules (48ms) El
name
aplicación debe definirse en el archivo de configuraciónapp.json
para definir el nombre del proyecto. No debe contener espacios ni guiones.
Este es el archivo app.json:
{
"expo": {
"name": "AwesomeProject",
"description": "A very interesting project.",
"slug": "AwesomeProject",
"privacy": "public",
"sdkVersion": "30.0.0",
"platforms": ["ios", "android"],
"ios": {
"supportsTablet": true
},
"android": {
"package": "com.project.first"
},
"version": "1.0.0",
"orientation": "portrait",
"icon": "./assets/images/icon.png",
"splash": {
"image": "./assets/images/splash.png",
"resizeMode": "contain",
"backgroundColor": "#ffffff"
},
"updates": {
"fallbackToCacheTimeout": 0
},
"assetBundlePatterns": [
"**/*"
]
}
}
Cuando ejecuté la
react-native eject
, recibí este error:
Both the iOS and Android folders already exist! Please delete `ios` and/or `android` before ejecting.
-
Elimine la carpeta
MyProject/android
. -
Ejecutar
react-native eject
Esto generó la carpeta deandroid
-
Luego ejecute
react-native run-android
para construir android
Debería considerar usar la nueva herramienta de actualización basada en Git. Facilita las actualizaciones al resolver la mayoría de los conflictos automáticamente. Para usarlo: - Vuelva a la versión anterior de React Native - Ejecute "npm install -g react-native-git-upgrade" - Ejecute "react-native-git-upgrade" Consulte https://facebook.github.io/react-native/docs/upgrading.html
En la última versión de react-native, esta sugerencia aparece cuando intenta ejecutar el comando:
react-native eject
Escaneo de carpetas para enlaces simbólicos en D: / ProjectRoot / ReactNativeProjects / AwesomeProject / node_modules (48ms) El
name
aplicación debe definirse en el archivo de configuraciónapp.json
para definir el nombre del proyecto. No debe contener espacios ni guiones.
Ahora cuando emite el siguiente comando:
D:/ProjectRoot/ReactNativeProjects/AwesomeProject>react-native upgrade
Aparece lo siguiente:
Escaneo de carpetas para enlaces simbólicos en D: / ProjectRoot / ReactNativeProjects / AwesomeProject / node_modules (56ms) Debería considerar usar la nueva herramienta de actualización basada en Git. Facilita las actualizaciones al resolver la mayoría de los conflictos automáticamente. Para usarlo: - Vuelva a la versión anterior de React Native - Ejecute "npm install -g react-native-git-upgrade" - Ejecute "react-native-git-upgrade" Consulte https://facebook.github.io/react-native/docs/upgrading.html versión react-native en "package.json" no coincide con la versión instalada en "node_modules". Intenta ejecutar "npm install" para arreglar esto. Abortar
En las sugerencias de comandos de reacción nativa de Facebook, hay una solución clara.
Estos comandos verifican la versión actual y si se necesita una actualización o no.
Por favor vea también:
Solución a "Expo: no se puede encontrar un módulo LogReporter"
Me gustó esto ... ¡Funcionó!
- En el proyecto CMD root ejecute la actualización react-native .
- si aún tiene problemas, asegúrese de tener react-native en las dependencias json en package.json , agréguelo si no
- si aún tiene problemas, obtenga la versión de react native en cmd usando react-native -v y verifique si el valor devuelto en cmd y package.json son los mismos. Actualice package.json con el valor devuelto en cmd
Aquí mi problema resuelto.
Mi solución de trabajo está abajo, ninguna de las anteriores funcionó para mí:
CD en su carpeta de proyecto y escriba expo start --android.
O el largo camino:
- Abra el administrador AVD en Android Studio y ejecute un dispositivo virtual (puede cerrar AS después)
- CMD en su carpeta de proyecto y escriba ''expo start''
- Una vez que la Expo ha comenzado, elija la opción 2, que es "Presione a para el emulador de Android"
Instalará expo en el dispositivo virtual y puede probar desde allí
Planteé esta pregunta y me respondí, ya que pensé que ayudaría a otros que enfrentan un problema similar. Luché mucho para descubrir la verdadera razón detrás de esto, ya que el error que se muestra en la terminal no era preciso.
Para resolver el problema, actualice el paquete react-native.
- Ir a la raíz del proyecto .
-
Actualice el paquete nativo React en el símbolo del sistema escribiendo:
react-native upgrade
. -
Luego, acepte actualizar todos los archivos escribiendo
y (Yes)
en el símbolo del sistema .
Referencia: https://github.com/facebook/react-native/issues/9312
Sé que es una vieja pregunta, pero cualquiera de esas soluciones no funcionó para mí y tal vez haya otras como yo.
Resolví mi problema al ejecutar este comando antes de
run-android
react-native eject
Tuvimos este problema porque los archivos de la carpeta de Android gradlew y gradlew.bat (secuencia de comandos de inicio de Gradle para UN * X, Windows respectivamente) de alguna manera entraron en el archivo global .gitignore, por lo que no se presentaron en entornos locales.
En realidad, el comando de actualización react-native restaura esos archivos, solucionando así el problema.