Когда я настроил Gradle, чтобы выполнить следующие действия для агрегирования отчета о зависимостях html в моей многопроектной сборке:
apply plugin: 'project-report'
htmlDependencyReport {
projects = project.allprojects
}
Я получаю кучу предупреждений:
Конфигурация была решена
без доступа к проекту в безопасном режиме. Это может случиться когда
конфигурация разрешается из потока, не управляемого Gradle или
из другого проекта. Увидеть
https://docs.gradle.org/5.2.1/userguide/troubleshooting_dependency_resolution.html#sub:configuration_resolution_constraints
Больше подробностей. Это поведение устарело и запланировано
подлежит удалению в Gradle 6.0.
То, что я вижу по трассировке стека, происходит из этой задачи:
at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.resolveToStateOrLater(DefaultConfiguration.java:535)
* at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.access$2200(DefaultConfiguration.java:136)
* at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration$ConfigurationResolvableDependencies.assertArtifactsResolved(DefaultConfiguration.java:1415)
* at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration$ConfigurationResolvableDependencies.access$3500(DefaultConfiguration.java:1303)
* at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration$ConfigurationResolvableDependencies$LenientResolutionResult.resolve(DefaultConfiguration.java:1430)
* at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration$ConfigurationResolvableDependencies$LenientResolutionResult.getRoot(DefaultConfiguration.java:1443)
* at org.gradle.api.reporting.dependencies.internal.JsonProjectDependencyRenderer.createDependencies(JsonProjectDependencyRenderer.java:166)
* at org.gradle.api.reporting.dependencies.internal.JsonProjectDependencyRenderer.access$000(JsonProjectDependencyRenderer.java:112)
* at org.gradle.api.reporting.dependencies.internal.JsonProjectDependencyRenderer$1.transform(JsonProjectDependencyRenderer.java:155)
* at org.gradle.api.reporting.dependencies.internal.JsonProjectDependencyRenderer$1.transform(JsonProjectDependencyRenderer.java:149)
* at org.gradle.util.CollectionUtils.collect(CollectionUtils.java:205)
* at org.gradle.util.CollectionUtils.collect(CollectionUtils.java:200)
* at org.gradle.api.reporting.dependencies.internal.JsonProjectDependencyRenderer.createConfigurations(JsonProjectDependencyRenderer.java:149)
* at org.gradle.api.reporting.dependencies.internal.JsonProjectDependencyRenderer.renderProject(JsonProjectDependencyRenderer.java:141)
* at org.gradle.api.reporting.dependencies.internal.JsonProjectDependencyRenderer.render(JsonProjectDependencyRenderer.java:127)
* at org.gradle.api.reporting.dependencies.internal.HtmlDependencyReporter.generateJsFile(HtmlDependencyReporter.java:79)
* at org.gradle.api.reporting.dependencies.internal.HtmlDependencyReporter.access$100(HtmlDependencyReporter.java:46)
* at org.gradle.api.reporting.dependencies.internal.HtmlDependencyReporter$1.render(HtmlDependencyReporter.java:68)
* at org.gradle.api.reporting.dependencies.internal.HtmlDependencyReporter$1.render(HtmlDependencyReporter.java:59)
* at org.gradle.reporting.HtmlReportRenderer.render(HtmlReportRenderer.java:42)
* at org.gradle.api.reporting.dependencies.internal.HtmlDependencyReporter.render(HtmlDependencyReporter.java:59)
* at org.gradle.api.reporting.dependencies.HtmlDependencyReportTask.generate(HtmlDependencyReportTask.java:136)
* at java.lang.reflect.Method.invoke(Method.java:498)
Есть ли способ агрегировать этот отчет без получения этого предупреждения?
Я на самом деле пытался воспользоваться советом:
В большинстве случаев предупреждение об устаревании можно исправить, определив
Конфигурация в проекте, где происходит разрешение и
установка его на расширение из конфигурации в другом проекте.
до крайности, и создание новой конфигурации в моем корневом проекте, которая расширяет конфигурацию подпроекта для каждого конфигураций в каждом из моих подпроектов программно, и вынуждает их (безопасно) разрешаться только до на выполнение задачи htmlDependencyReport
. Я могу наблюдать за их решением, никаких проблем. Затем, когда эта задача запускается, она все равно выдает эту ошибку.
Так есть ли способ снять это предупреждение? Я предполагаю, что команда Gradle исправит внутренности этого плагина до выпуска 6.0, но я хочу продолжать работать с этим отчетом и не хочу видеть это в моих результатах сборки до этого момента.