【发布时间】:2019-09-21 04:45:50
【问题描述】:
我是一名 UI 开发人员,并且是 android、gradle 的新手,并试图弄清楚为什么调试构建运行良好而发布构建却没有。另外,如何才能弄清楚这个问题。 我升级了一个旧的 android 应用程序,其中包括从 v0.36.0 到 0.58.0 的 react native 升级并尝试构建相同的
- 调试版本运行良好
- react-native 命令运行良好 react-native bundle --platform android --entry-file index.android.js --bundle-output xyz/index.android.bundle --assets-dest xyz/ --dev false
但是当我尝试运行 ./gradlew bundleReleaseJsAndAssets --debug 它运行无限时间。 我正在使用 MAC,gradle 4.7
试过 project.ext.react = [ extraPackagerArgs: ["--max-workers=1"] ] 尝试 org.gradle.configureondemand=true 因为我可以手动捆绑。 从以下链接尝试解决方案
https://proandroiddev.com/bundling-react-native-during-android-release-builds-ec52c24e200d
https://github.com/facebook/react-native/issues/11696
https://github.com/facebook/react-native/issues/10078
[org.gradle.cache.internal.DefaultFileLockManager] Waiting to acquire shared lock on daemon addresses registry.
21:25:28.941 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Lock acquired on daemon addresses registry.
21:25:28.942 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Releasing lock on daemon addresses registry.
21:25:28.942 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Waiting to acquire shared lock on daemon addresses registry.
21:25:28.942 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Lock acquired on daemon addresses registry.
21:25:28.942 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Releasing lock on daemon addresses registry.
21:25:29.241 [DEBUG] [org.gradle.process.internal.health.memory.MemoryManager] Emitting OS memory status event {Total: 17179869184, Free: 6562177024}
21:25:29.242 [DEBUG] [org.gradle.launcher.daemon.server.health.LowMemoryDaemonExpirationStrategy] Received memory status update: {Total: 17179869184, Free: 6562177024}
21:25:29.242 [DEBUG] [org.gradle.process.internal.health.memory.MemoryManager] Emitting JVM memory status event {Maximum: 954728448, Committed: 671088640}
21:25:34.240 [DEBUG] [org.gradle.process.internal.health.memory.MemoryManager] Emitting OS memory status event {Total: 17179869184, Free: 6569676800}
21:25:34.240 [DEBUG] [org.gradle.launcher.daemon.server.health.LowMemoryDaemonExpirationStrategy] Received memory status update: {Total: 17179869184, Free: 6569676800}
21:25:34.240 [DEBUG] [org.gradle.process.internal.health.memory.MemoryManager] Emitting JVM memory status event {Maximum: 954728448, Committed: 681574400}
21:25:38.941 [DEBUG] [org.gradle.launcher.daemon.server.Daemon] DaemonExpirationPeriodicCheck running
21:25:38.941 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Waiting to acquire shared lock on daemon addresses registry.
21:25:38.941 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Lock acquired on daemon addresses registry.
21:25:38.941 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Releasing lock on daemon addresses registry.
21:25:38.942 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Waiting to acquire shared lock on daemon addresses registry.
21:25:38.942 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Lock acquired on daemon addresses registry.
21:25:38.942 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Releasing lock on daemon addresses registry.
如果有帮助,下面是 ps -ef | 的结果grep "gradle"
-Dfile.encoding=UTF-8 -Duser.country=IN -Duser.language=en -Duser.variant -cp /Users/x.y/.gradle/wrapper/dists/gradle-4.10.1-all/455itskqi2qtf0v2sja68alqd/gradle-4.10.1/lib/gradle-launcher-4.10.1.jar org.gradle.launcher.daemon.bootstrap.GradleDaemon 4.10.1
2029432261 16668 16658 0 9:24PM ?? 3:48.65 /Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/bin/java -XX:+HeapDumpOnOutOfMemoryError -Xmx1024m -Dfile.encoding=UTF-8 -Duser.country=US -Duser.language=en -Duser.variant -cp /Users/x.y/.gradle/wrapper/dists/gradle-4.10.1-all/25vec0eimrsoqjasnun8prrj45/gradle-4.10.1/lib/gradle-launcher-4.10.1.jar org.gradle.launcher.daemon.bootstrap.GradleDaemon 4.10.1
2029432261 16658 1910 0 9:24PM ttys001 0:14.87 /usr/bin/java -Xdock:name=Gradle -Xdock:icon=/Users/x.y/Dev/Mobile/myapp-android/media/gradle.icns -Dorg.gradle.appname=gradlew -classpath /Users/x.y/Dev/Mobile/myapp-android/gradle/wrapper/gradle-wrapper.jar org.gradle.wrapper.GradleWrapperMain clean assembleRelease --debug
【问题讨论】:
标签: android react-native android-gradle-plugin react-native-android gradlew