Gradle 卡在 mergeDebugAssets 上,甚至没有失败
Gradle is stuck on mergeDebugAssets, doesn't even fail
我有一个 Android 项目,我在 Android Studio 中 运行。我以前有 运行 这个项目,但现在我做了一些更改(虽然我不太记得我做了什么),然后当我使用 Gradle 构建它时,它卡在 mergeDebugAssets
。我什至看不到错误,它就在那里,显然是在等待某事发生。我也尝试过清洁,但在同一步骤中也卡住了。我已经尝试从 Android Studio 和命令行(使用 -d
选项)运行ning 它,但结果是一样的,并且没有其他消息可以帮助我开始寻找问题。
我的 gradle 文件:
apply plugin: 'android'
apply plugin: 'maven'
version '1.1'
group 'com.baker'
repositories {
maven { url "http://dl.bintray.com/populov/maven" }
mavenCentral()
maven {
url 'file://' + new File(System.getProperty('user.home'), '.m2/repository').absolutePath
}
}
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
minSdkVersion 11
targetSdkVersion 21
testApplicationId "com.baker.abaker.test"
testInstrumentationRunner "android.test.InstrumentationTestRunner"
}
}
uploadArchives {
repositories {
mavenDeployer {
// Due to a bug in gradle 0.4.2 to 0.4.4 we use this way to get the maven local repository path.
repository url: 'file://' + new File(System.getProperty('user.home'), '.m2/repository').absolutePath
}
}
}
task install(dependsOn: uploadArchives)
dependencies {
compile 'com.google.android.gms:play-services:6.1.71'
compile 'com.android.support:support-v4:21.0.0'
compile 'org.jsoup:jsoup:1.7.3'
compile 'org.apache.commons:commons-compress:1.8.1'
compile 'com.viewpagerindicator:library:2.4.1@aar'
compile project(':GooglePlayLicence')
compile project(':GooglePlayDownloader')
}
gradlew.bat assembleDebug -d
的相关输出:
10:38:34.486 [LIFECYCLE] [class org.gradle.TaskExecutionLogger] :ABaker:mergeDebugAssets
10:38:34.486 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter ]
Starting to execute task ':ABaker:mergeDebugAssets'
10:38:34.503 [DEBUG] [org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter ]
Determining if task ':ABaker:mergeDebugAssets' is up-to-date
10:41:46.358 [INFO] [org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter ]
Executing task ':ABaker:mergeDebugAssets' (up-to-date check took 3 mins 11.847 secs) due to:
Output file H:\Proyectos\LGBT.Android\ABaker\build\intermediates\incremental\mergeAssets\debug has changed.
Output file H:\Proyectos\LGBT.Android\ABaker\build\intermediates\assets\debughas changed.
Output file H:\Proyectos\LGBT.Android\ABaker\build\intermediates\assets\debug\books\LGTB\assets\images_5_3_1@2x.jpg has changed.
10:41:46.371 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter ]
Executing actions for task ':ABaker:mergeDebugAssets'.
10:41:46.391 [INFO] [org.gradle.api.internal.changedetection.changes.RebuildIncrementalTaskInputs ]
All input files are considered out-of-date for incremental task ':ABaker:mergeDebugAssets'.
10:41:46.410 [INFO] [org.gradle.api.Project] Unable do incremental execution: full task run
10:41:56.735 [INFO] [org.gradle.api.Project] deleteDir(H:\Proyectos\LGBT.Android\ABaker\build\intermediates\assets\debug) returned: true
它似乎检测到图像中的变化 (7_5_3_1@2x.jpg),我确定没有发生变化。我的更改仅在 Java 代码中进行。
真正的问题不是进程卡住了,而是我的项目太大了,一次更改需要一个多小时才能成功完成构建。
现在我必须调查为什么我的项目这么大,但这超出了这个问题的范围。
我自己刚遇到这个问题。
:app:mergeDebugAssets
与您 assets
文件夹中的任何内容相关。
我有一个 myApp.realm
文件,这不是问题。问题是我在 Realm Studio 中打开了文件,它在 assets
.
中创建了一个 myApp.realm.management
目录和 myApp.realm.lock
文件
删除那些生成的文件解决了我的具体问题。
我希望这可以帮助其他人从 Google 登陆这里。
我有一个 Android 项目,我在 Android Studio 中 运行。我以前有 运行 这个项目,但现在我做了一些更改(虽然我不太记得我做了什么),然后当我使用 Gradle 构建它时,它卡在 mergeDebugAssets
。我什至看不到错误,它就在那里,显然是在等待某事发生。我也尝试过清洁,但在同一步骤中也卡住了。我已经尝试从 Android Studio 和命令行(使用 -d
选项)运行ning 它,但结果是一样的,并且没有其他消息可以帮助我开始寻找问题。
我的 gradle 文件:
apply plugin: 'android'
apply plugin: 'maven'
version '1.1'
group 'com.baker'
repositories {
maven { url "http://dl.bintray.com/populov/maven" }
mavenCentral()
maven {
url 'file://' + new File(System.getProperty('user.home'), '.m2/repository').absolutePath
}
}
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
minSdkVersion 11
targetSdkVersion 21
testApplicationId "com.baker.abaker.test"
testInstrumentationRunner "android.test.InstrumentationTestRunner"
}
}
uploadArchives {
repositories {
mavenDeployer {
// Due to a bug in gradle 0.4.2 to 0.4.4 we use this way to get the maven local repository path.
repository url: 'file://' + new File(System.getProperty('user.home'), '.m2/repository').absolutePath
}
}
}
task install(dependsOn: uploadArchives)
dependencies {
compile 'com.google.android.gms:play-services:6.1.71'
compile 'com.android.support:support-v4:21.0.0'
compile 'org.jsoup:jsoup:1.7.3'
compile 'org.apache.commons:commons-compress:1.8.1'
compile 'com.viewpagerindicator:library:2.4.1@aar'
compile project(':GooglePlayLicence')
compile project(':GooglePlayDownloader')
}
gradlew.bat assembleDebug -d
的相关输出:
10:38:34.486 [LIFECYCLE] [class org.gradle.TaskExecutionLogger] :ABaker:mergeDebugAssets
10:38:34.486 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter ]
Starting to execute task ':ABaker:mergeDebugAssets'
10:38:34.503 [DEBUG] [org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter ]
Determining if task ':ABaker:mergeDebugAssets' is up-to-date
10:41:46.358 [INFO] [org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter ]
Executing task ':ABaker:mergeDebugAssets' (up-to-date check took 3 mins 11.847 secs) due to:
Output file H:\Proyectos\LGBT.Android\ABaker\build\intermediates\incremental\mergeAssets\debug has changed.
Output file H:\Proyectos\LGBT.Android\ABaker\build\intermediates\assets\debughas changed.
Output file H:\Proyectos\LGBT.Android\ABaker\build\intermediates\assets\debug\books\LGTB\assets\images_5_3_1@2x.jpg has changed.
10:41:46.371 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter ]
Executing actions for task ':ABaker:mergeDebugAssets'.
10:41:46.391 [INFO] [org.gradle.api.internal.changedetection.changes.RebuildIncrementalTaskInputs ]
All input files are considered out-of-date for incremental task ':ABaker:mergeDebugAssets'.
10:41:46.410 [INFO] [org.gradle.api.Project] Unable do incremental execution: full task run
10:41:56.735 [INFO] [org.gradle.api.Project] deleteDir(H:\Proyectos\LGBT.Android\ABaker\build\intermediates\assets\debug) returned: true
它似乎检测到图像中的变化 (7_5_3_1@2x.jpg),我确定没有发生变化。我的更改仅在 Java 代码中进行。
真正的问题不是进程卡住了,而是我的项目太大了,一次更改需要一个多小时才能成功完成构建。
现在我必须调查为什么我的项目这么大,但这超出了这个问题的范围。
我自己刚遇到这个问题。
:app:mergeDebugAssets
与您 assets
文件夹中的任何内容相关。
我有一个 myApp.realm
文件,这不是问题。问题是我在 Realm Studio 中打开了文件,它在 assets
.
myApp.realm.management
目录和 myApp.realm.lock
文件
删除那些生成的文件解决了我的具体问题。
我希望这可以帮助其他人从 Google 登陆这里。