9
respostas

Ajuda com inicialização do App

Preciso de ajuda, segui os passos para instalar o ambiente do link: https://www.alura.com.br/artigos/configurando-o-ambiente-react-native?_gl=1bj6vas_gaNzg1MzU1NDI1LjE2ODIzNzYxMjY._ga_59FP0KYKSMMTY4OTYzMzUxOS4zOS4xLjE2ODk2MzQ2MTMuMC4wLjA._fplc*cllCWXhQQmRrZzBieXkwamolMkJUN0tPOGMlMkZxSzFNbGYyQUxLdEJ4VUFsWUVMdVJIdU1QNUZSMWloTTJtV2R6eGRJcUZpZDhnQnBmQ0c2Q21IbFNCJTJGUUd1bHZxMzJ1YXVCeSUyQkM3SllBRjFxMUwzVCUyRlhkUXJrVEJKYVJaZ2llQSUzRCUzRA.. Após isso meu ambiente ficou assim: Node, Choco e Java . Baixei o projeto da aula, adicionei à uma pasta e instalei as dependencias com o npm install. Rodei o comando npm start, abri outro terminal e rodei o comando npm run android, porem ao rodar , o emulador abre, e em seguida acontece o seguinte erro:

> orgsnavegacao@0.0.1 android
> react-native run-android

info Running jetifier to migrate libraries to AndroidX. You can disable it using "--no-jetifier" flag.
Jetifier found 918 file(s) to forward-jetify. Using 8 workers...
info JS server already running.
info Launching emulator...
info Successfully launched emulator.
info Installing the app...
> Task :react-native-svg:generateDebugRFile FAILED
23 actionable tasks: 2 executed, 21 up-to-date

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':react-native-svg:generateDebugRFile'.
> Could not resolve all files for configuration ':react-native-svg:debugCompileClasspath'.
   > Failed to transform react-native-0.71.0-rc.0-debug.aar (com.facebook.react:react-native:0.71.0-rc.0) to match attributes {artifactType=android-symbol-with-package-name, com.android.build.api.attributes.BuildTypeAttr=debug, org.gradle.category=library, org.gradle.dependency.bundling=external, org.gradle.libraryelements=aar, org.gradle.status=release, org.gradle.usage=java-api}.
      > Execution failed for JetifyTransform: C:\Users\Matheus\.gradle\caches\modules-2\files-2.1\com.facebook.react\react-native\0.71.0-rc.0\7a7f5a0af6ebd8eb94f7e5f7495e9d9684b4f543\react-native-0.71.0-rc.0-debug.aar.
         > Java heap space

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 14s

error Failed to install the app. Make sure you have the Android development environment set up: https://reactnative.dev/docs/environment-setup.
Error: Command failed: gradlew.bat app:installDebug -PreactNativeDevServerPort=8081

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':react-native-svg:generateDebugRFile'.
> Could not resolve all files for configuration ':react-native-svg:debugCompileClasspath'.
   > Failed to transform react-native-0.71.0-rc.0-debug.aar (com.facebook.react:react-native:0.71.0-rc.0) to match attributes {artifactType=android-symbol-with-package-name, com.android.build.api.attributes.BuildTypeAttr=debug, org.gradle.category=library, org.gradle.dependency.bundling=external, org.gradle.libraryelements=aar, org.gradle.status=release, org.gradle.usage=java-api}.
      > Execution failed for JetifyTransform: C:\Users\Matheus\.gradle\caches\modules-2\files-2.1\com.facebook.react\react-native\0.71.0-rc.0\7a7f5a0af6ebd8eb94f7e5f7495e9d9684b4f543\react-native-0.71.0-rc.0-debug.aar.
         > Java heap space

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 14s

    at makeError (C:\Users\Matheus\Documents\rnnavegacao\node_modules\@react-native-community\cli-platform-android\node_modules\execa\index.js:174:9)
    at C:\Users\Matheus\Documents\rnnavegacao\node_modules\@react-native-community\cli-platform-android\node_modules\execa\index.js:278:16
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async runOnAllDevices (C:\Users\Matheus\Documents\rnnavegacao\node_modules\@react-native-community\cli-platform-android\build\commands\runAndroid\runOnAllDevices.js:109:5)
    at async Command.handleAction (C:\Users\Matheus\Documents\rnnavegacao\node_modules\@react-native-community\cli\build\index.js:192:9)
info Run CLI with --verbose flag for more details. 

Estou a 3 dias tentando iniciar esse novo modulo da formação mobile e não consigo sair da primeira parte porque nao funciona o projeto. Já pedi ajuda no discord e não obtive resposta

9 respostas

Olá, Matheus!

Entendo a sua frustração ao tentar iniciar esse novo módulo da formação mobile e encontrar dificuldades. Vou tentar te ajudar a resolver esse problema.

Pelo erro apresentado, parece que o erro está relacionado ao espaço de memória Java Heap. Uma possível solução é aumentar o espaço de memória disponível para o Gradle. Para fazer isso, você pode adicionar a seguinte configuração no arquivo gradle.properties do seu projeto:

org.gradle.jvmargs=-Xmx4096m

Essa configuração aumentará o espaço de memória para 4GB. Se você ainda tiver problemas, pode tentar aumentar ainda mais esse valor.

Outra possível solução é limpar o cache do Gradle. Para fazer isso, você pode executar o seguinte comando no terminal, dentro da pasta do seu projeto:

gradlew clean

Esse comando irá limpar o cache do Gradle e pode resolver alguns problemas de compilação.

Se mesmo assim o erro persistir, pode ser necessário verificar se todas as dependências do projeto estão atualizadas e compatíveis entre si. Verifique se você está utilizando as versões corretas das bibliotecas e se todas as dependências estão declaradas corretamente no arquivo build.gradle do seu projeto.

Espero que essas sugestões possam te ajudar a resolver o problema. Caso ainda tenha alguma dúvida, estou à disposição para ajudar. Lembre-se de que essas são apenas possíveis soluções e podem não funcionar em todos os casos.

Espero ter ajudado e bons estudos!

Obrigado pelo retorno Renan, adicionei a linha que informou e tambem fiz a limpeza. A aplicação rodou sem erro dessa vez, porem no emulador o app abre com erro... Insira aqui a descrição dessa imagem para ajudar na acessibilidade - Insira aqui a descrição dessa imagem para ajudar na acessibilidade - Se você tiver mais alguma dica do que fazer ... Já estou para desistir do curso kkk

Fala, Matheus! Tudo bem?

Entendo que você está enfrentando dificuldades ao tentar executar o comando "npm start" mas vamos tentar alguns passos para solucionar o problema.

Entre na pasta do android com o seguinte comando:

cd android

Depois, rode o seguinte comando:

gradlew clean 

e por último, volte a pasta anterior:

cd ../

Agora, abra o arquivo build.gradle e substitua o código inteiro por esse:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    ext {
        buildToolsVersion = "30.0.2"
        minSdkVersion = 21
        compileSdkVersion = 30
        targetSdkVersion = 30
        ndkVersion = "21.4.7075529"
    }
    repositories {
        google()
        mavenCentral()
        jcenter()
    }
    dependencies {
        classpath("com.android.tools.build:gradle:4.2.2")
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        exclusiveContent {
            // We get React Native's Android binaries exclusively through npm,
            // from a local Maven repo inside node_modules/react-native/.
            // (The use of exclusiveContent prevents looking elsewhere like Maven Central
            // and potentially getting a wrong version.)
            filter {
                includeGroup "com.facebook.react"
            }
            forRepository {
                maven {
                    url "$rootDir/../node_modules/react-native/android"
                }
            }
        }
        mavenCentral()
        mavenLocal()
        maven {
            // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
            url("$rootDir/../node_modules/react-native/android")
        }
        maven {
            // Android JSC is installed from npm
            url("$rootDir/../node_modules/jsc-android/dist")
        }

        google()
        jcenter()

        maven { url 'https://www.jitpack.io' }
    }
}

Depois de tudo isso, pode tentar rodar o comando npm run android novamente. Poderia me dizer se funcionou? Fico no aguardo

Eu espero que tenha ajudado e qualquer coisa estou por aqui.

bons estudos!

Fiz conforme passou, porem ainda continua com o erro. Fiz o processo pelo emulador e pelo celular fisico. No terminal em que executo o npm start, aparece o erro abaixo e fica igual ao print que mandei anteriormente na tela vermelha.

` BUNDLE ./index.js

error: TypeError: Cannot read properties of undefined (reading 'transformFile') at Bundler.transformFile (C:\Users\Matheus\Documents\rnnavegacao\node_modules\metro\src\Bundler.js:48:30) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) at async Object.transform (C:\Users\Matheus\Documents\rnnavegacao\node_modules\metro\src\lib\transformHelpers.js:101:12) at async processModule (C:\Users\Matheus\Documents\rnnavegacao\node_modules\metro\src\DeltaBundler\traverseDependencies.js:137:18) at async traverseDependenciesForSingleFile (C:\Users\Matheus\Documents\rnnavegacao\node_modules\metro\src\DeltaBundler\traverseDependencies.js:131:3) at async Promise.all (index 0) at async initialTraverseDependencies (C:\Users\Matheus\Documents\rnnavegacao\node_modules\metro\src\DeltaBundler\traverseDependencies.js:114:3) at async DeltaCalculator._getChangedDependencies (C:\Users\Matheus\Documents\rnnavegacao\node_modules\metro\src\DeltaBundler\DeltaCalculator.js:164:25) at async DeltaCalculator.getDelta (C:\Users\Matheus\Documents\rnnavegacao\node_modules\metro\src\DeltaBundler\DeltaCalculator.js:94:16) at async DeltaBundler.buildGraph (C:\Users\Matheus\Documents\rnnavegacao\node_modules\metro\src\DeltaBundler.js:50:5)`

Então Matheus, bem estranho mesmo esse erro que você está tendo. Qual é o curso que você está fazendo e tem esse projeto? Assim posso fazer alguns testes por aqui. Fico no aguardo...

Claro, segue o link do curso: https://cursos.alura.com.br/course/react-native-criando-menu-navegando-telas/task/102547 | React Native: criando menu e navegando entre telas

Olá, Matheus, tudo bem?

Poderia fazer mais um teste por ai?

Abra o arquivo build.gradle e substitua o código que estiver lá pelo seguinte:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    ext {
        buildToolsVersion = "30.0.2"
        minSdkVersion = 21
        compileSdkVersion = 30
        targetSdkVersion = 30
        ndkVersion = "21.4.7075529"
    }
    repositories {
        google()
        mavenCentral()
        jcenter()
    }
    dependencies {
        classpath("com.android.tools.build:gradle:4.2.2")
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        exclusiveContent {
            // We get React Native's Android binaries exclusively through npm,
            // from a local Maven repo inside node_modules/react-native/.
            // (The use of exclusiveContent prevents looking elsewhere like Maven Central
            // and potentially getting a wrong version.)
            filter {
                includeGroup "com.facebook.react"
            }
            forRepository {
                maven {
                    url "$rootDir/../node_modules/react-native/android"
                }
            }
        }
        mavenCentral()
        mavenLocal()
        maven {
            // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
            url("$rootDir/../node_modules/react-native/android")
        }
        maven {
            // Android JSC is installed from npm
            url("$rootDir/../node_modules/jsc-android/dist")
        }

        google()
        jcenter()

        maven { url 'https://www.jitpack.io' }
    }
}

Agora, no terminal do seu projeto execute o seguinte comando:

yarn add rect-native-svg   

Nesse caso, precisar ser utilizando o comando yarn mesmo ok?

Depois disso, poderia tentar exectuar o projeto novamente com o npm start e onpx react-native run-android. Agora, funcionou? Fico no aguardo

Espero que tenha ajudado bons estudos!

Após ter feito oque informou, ele retorna o erro:

PS C:\Users\Matheus\Documents\rnnavegacao> npm start 

> orgsnavegacao@0.0.1 start
> react-native start       

'react-native' não é reconhecido como um comando interno
ou externo, um programa operável ou um arquivo em lotes.

Olá, Matheus, tudo bem?

Nesse caso, acho que conseguimos resolver o outro problema então de start do projeto. Agora, parece ser outro erro na parte de configuração do ambiente. Para isso, podemos fazer alguns testes para ver se funciona, começando com:

A mensagem de erro indica que o comando 'react-native' não está sendo reconhecido, o que sugere que o pacote do React Native CLI pode não estar instalado corretamente. Por favor, siga os passos a seguir para corrigir o problema:

  1. Primeiro, desinstale o antigo react-native-cli globalmente usando o seguinte comando:

    npm uninstall -g react-native-cli
    
  2. Em seguida, instale novamente o React Native Cli de forma global na sua máquina.

Além disso, npx é uma ferramenta que é instalada junto com o npm, a partir da versão 5.2.0, que executa pacotes npm sem a necessidade de instalá-los globalmente.

Um outro motivo que pode causar esse problema é alguma configuração que ficou faltando alguma parte da configuração do ambiente, principalmente na parte de configuração do PATH, que pode estar causando esse erro. Poderia seguir o passo a passo desse tópico aqui, nele o instrutor ensina passo a passo de como configurar o seu ambiente e testar se as váriveis de ambiemte foram configuradas. Poderia testar e me dizer se funcionou ?

Estou por aqui no aguardo qualquer coisa

Bons estudos!!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software