Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FAILURE: Build failed with an exception. in "react-native": "0.75.2", #649

Open
linhuanfeng opened this issue Aug 23, 2024 · 14 comments
Open

Comments

@linhuanfeng
Copy link

Run react-native info in your project and share the content.

info Fetching system and libraries information...
(node:25196) Warning: Accessing non-existent property 'padLevels' of module exports inside circular dependency
(Use `node --trace-warnings ...` to show where the warning was created)
System:
  OS: Windows 11 10.0.22631
  CPU: "(16) x64 AMD Ryzen 7 4800H with Radeon Graphics         "
  Memory: 1.57 GB / 15.37 GB
Binaries:
  Node:
    version: 20.14.0
    path: H:\app\nvm\nodejs\node.EXE
  Yarn:
    version: 1.22.22
    path: H:\app\nvm\nodejs\yarn.CMD
  npm:
    version: 10.7.0
    path: H:\app\nvm\nodejs\npm.CMD
  Watchman: Not Found
SDKs:
  Android SDK: Not Found
  Windows SDK: Not Found
IDEs:
  Android Studio: Not Found
  Visual Studio:
    - 17.6.33829.357 (Visual Studio Community 2022)
Languages:
  Java: 17.0.3.1
  Ruby: Not Found
npmPackages:
  "@react-native-community/cli": Not Found
  react:
    installed: 18.3.1
    wanted: 18.3.1
  react-native:
    installed: 0.75.2
    wanted: 0.75.2
  react-native-windows: Not Found
npmGlobalPackages:
  "*react-native*": Not Found
Android:
  hermesEnabled: true
  newArchEnabled: false
iOS:
  hermesEnabled: Not found
  newArchEnabled: Not found

What react-native-splash-screen version are you using?

"react-native-tab-navigator": "^0.3.4",

What platform does your issue occur on? (Android/iOS/Both)

Android

Describe your issue as precisely as possible :

  1. Steps to reproduce the issue or to explain in which case you get the issue
  2. Interesting logs

As long as I add the dependency yarn add reactive plasma screen, the project will fail to start
failed to launch project

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:checkDebugDuplicateClasses'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.CheckDuplicatesRunnable
   > Duplicate class android.support.v4.app.INotificationSideChannel found in modules core-1.9.0.aar -> core-1.9.0-runtime (androidx.core:core:1.9.0) and support-compat-26.1.0.aar -> support-compat-26.1.0-runtime (com.android.support:support-compat:26.1.0)
     Duplicate class android.support.v4.app.INotificationSideChannel$Stub found in modules core-1.9.0.aar -> core-1.9.0-runtime (androidx.core:core:1.9.0) and support-compat-26.1.0.aar -> support-compat-26.1.0-runtime (com.android.support:support-compat:26.1.0)
     Duplicate class android.support.v4.app.INotificationSideChannel$Stub$Proxy found in modules core-1.9.0.aar -> core-1.9.0-runtime (androidx.core:core:1.9.0) and support-compat-26.1.0.aar -> support-compat-26.1.0-runtime (com.android.support:support-compat:26.1.0)
     Duplicate class android.support.v4.os.IResultReceiver found in modules core-1.9.0.aar -> core-1.9.0-runtime (androidx.core:core:1.9.0) and support-compat-26.1.0.aar -> support-compat-26.1.0-runtime (com.android.support:support-compat:26.1.0)
     Duplicate class android.support.v4.os.IResultReceiver$Stub found in modules core-1.9.0.aar -> core-1.9.0-runtime (androidx.core:core:1.9.0) and support-compat-26.1.0.aar -> support-compat-26.1.0-runtime (com.android.support:support-compat:26.1.0)
     Duplicate class android.support.v4.os.IResultReceiver$Stub$Proxy found in modules core-1.9.0.aar -> core-1.9.0-runtime (androidx.core:core:1.9.0) and support-compat-26.1.0.aar -> support-compat-26.1.0-runtime (com.android.support:support-compat:26.1.0)
     Duplicate class android.support.v4.os.ResultReceiver found in modules core-1.9.0.aar -> core-1.9.0-runtime (androidx.core:core:1.9.0) and support-compat-26.1.0.aar -> support-compat-26.1.0-runtime (com.android.support:support-compat:26.1.0)
     Duplicate class android.support.v4.os.ResultReceiver$1 found in modules core-1.9.0.aar -> core-1.9.0-runtime (androidx.core:core:1.9.0) and support-compat-26.1.0.aar -> support-compat-26.1.0-runtime (com.android.support:support-compat:26.1.0)
     Duplicate class android.support.v4.os.ResultReceiver$MyResultReceiver found in modules core-1.9.0.aar -> core-1.9.0-runtime (androidx.core:core:1.9.0) and support-compat-26.1.0.aar -> support-compat-26.1.0-runtime (com.android.support:support-compat:26.1.0)
     Duplicate class android.support.v4.os.ResultReceiver$MyRunnable found in modules core-1.9.0.aar -> core-1.9.0-runtime (androidx.core:core:1.9.0) and support-compat-26.1.0.aar -> support-compat-26.1.0-runtime (com.android.support:support-compat:26.1.0)

Join a screenshot or video of the problem on the simulator or device?

Show us the code you are using?

@idylmz
Copy link

idylmz commented Aug 25, 2024

Same here with 0.75.1 and splash screen 3.3.0

@agoenks29D
Copy link

image
same with @linhuanfeng

@ucheNkadiCode
Copy link

I think this has to do with the fact that in the latest react native, it's moving from java files to kt files.

This is a repo that doesn't seem to be updated anymore but these are the steps I took.
Although it is not recommended - I added android.enableJetifier=true to my gradle.properties file

android.useAndroidX=true
android.enableJetifier=true <-- This is the line that is important for the duplicate classes

My android/app/src/main/java/com/<APP_NAME>/MainActivity.kt my file looks like this

package com.<APP_NAME>
import android.os.Bundle

import com.facebook.react.ReactActivity
import com.facebook.react.ReactActivityDelegate
import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint.fabricEnabled
import com.facebook.react.defaults.DefaultReactActivityDelegate

import org.devio.rn.splashscreen.SplashScreen

class MainActivity : ReactActivity() {

   /**
   * Returns the name of the main component registered from JavaScript. This is used to schedule
   * rendering of the component.
   */
  override fun getMainComponentName(): String = "main"

  /**
   * Returns the instance of the [ReactActivityDelegate]. We use [DefaultReactActivityDelegate]
   * which allows you to enable New Architecture with a single boolean flags [fabricEnabled]
   */
  override fun createReactActivityDelegate(): ReactActivityDelegate =
      DefaultReactActivityDelegate(this, mainComponentName, fabricEnabled)
   
 override fun onCreate(savedInstanceState: Bundle?) {
  SplashScreen.show(this)
  super.onCreate(null) // SplashScreen actually will call super.onCreate
}

}

My android/app/src/main/java/com/app_name/SplashActivity.kt my file looks like this

package com.<APP_NAME>;

import android.content.Intent;
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;

class SplashActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState);
        val intent = Intent(this, MainActivity::class.java);
        startActivity(intent)
        finish()
    }
}

@umeshdangrecha
Copy link

Fix PR raised, owner Please merge my PR and publish a new version -> #650

@paveltar
Copy link

paveltar commented Sep 4, 2024

Fix PR raised, owner Please merge my PR and publish a new version -> #650

I think you should also update the readme for MainActivity.kt

@fedenelli
Copy link

Any ETA for this merge?

@umeshdangrecha
Copy link

umeshdangrecha commented Sep 9, 2024 via email

@umeshdangrecha
Copy link

umeshdangrecha commented Sep 9, 2024 via email

@annx10kn
Copy link

I think this has to do with the fact that in the latest react native, it's moving from java files to kt files.

This is a repo that doesn't seem to be updated anymore but these are the steps I took. Although it is not recommended - I added android.enableJetifier=true to my gradle.properties file

android.useAndroidX=true
android.enableJetifier=true <-- This is the line that is important for the duplicate classes

My android/app/src/main/java/com/<APP_NAME>/MainActivity.kt my file looks like this

package com.<APP_NAME>
import android.os.Bundle

import com.facebook.react.ReactActivity
import com.facebook.react.ReactActivityDelegate
import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint.fabricEnabled
import com.facebook.react.defaults.DefaultReactActivityDelegate

import org.devio.rn.splashscreen.SplashScreen

class MainActivity : ReactActivity() {

   /**
   * Returns the name of the main component registered from JavaScript. This is used to schedule
   * rendering of the component.
   */
  override fun getMainComponentName(): String = "main"

  /**
   * Returns the instance of the [ReactActivityDelegate]. We use [DefaultReactActivityDelegate]
   * which allows you to enable New Architecture with a single boolean flags [fabricEnabled]
   */
  override fun createReactActivityDelegate(): ReactActivityDelegate =
      DefaultReactActivityDelegate(this, mainComponentName, fabricEnabled)
   
 override fun onCreate(savedInstanceState: Bundle?) {
  SplashScreen.show(this)
  super.onCreate(null) // SplashScreen actually will call super.onCreate
}

}

My android/app/src/main/java/com/app_name/SplashActivity.kt my file looks like this

package com.<APP_NAME>;

import android.content.Intent;
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;

class SplashActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState);
        val intent = Intent(this, MainActivity::class.java);
        startActivity(intent)
        finish()
    }
}

thank you!! i updated my MainActivity.kt and it work fine

@umeshdangrecha
Copy link

umeshdangrecha commented Sep 10, 2024 via email

@gabgagnon
Copy link

Is there any maintainer still active on this npm package?

@c100k
Copy link

c100k commented Sep 18, 2024

Since this was the last library in my dependency tree requiring enableJetifier, I've migrated all my apps to use this library instead : https://github.com/zoontek/react-native-bootsplash.

I highly recommend the switch since the API is more modern and it respects more the standards, especially on Android (no more SplashActivity, launch_screen.xml, etc.).

@gabgagnon
Copy link

@c100k Thank you for the suggestion.

@sejeeth11
Copy link

App is crashing is PR

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests