znyang / library-analysis

Library Analysis Gradle Plugin
119 stars 24 forks source link

Cannot resolve which method to invoke for [null] due to overlapping prototypes #22

Closed znyang closed 7 years ago

znyang commented 7 years ago
Execution failed for task ':analysis-sample:libReportCompile'.
> Ambiguous method overloading for method java.lang.Long#plus.
Cannot resolve which method to invoke for [null] due to overlapping prototypes between:
    [class java.lang.Character]
    [class java.lang.String]
    [class java.lang.Number]

* Try:
Run with --info or --debug option to get more log output.

* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':analysis-sample:libReportCompile'.
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:69)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)
    at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)
    at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:64)
    at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
    at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:52)
    at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
    at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53)
    at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:203)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:185)
    at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:74)
    at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:55)
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
    at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
Caused by: groovy.lang.GroovyRuntimeException: Ambiguous method overloading for method java.lang.Long#plus.
Cannot resolve which method to invoke for [null] due to overlapping prototypes between:
    [class java.lang.Character]
    [class java.lang.String]
    [class java.lang.Number]
    at com.zen.plugin.lib.analysis.model.Library$_getTotalSizeWithoutIgnore_closure8.doCall(Library.groovy:158)
    at com.zen.plugin.lib.analysis.model.Library.getTotalSizeWithoutIgnore(Library.groovy:156)
    at com.zen.plugin.lib.analysis.model.Library$getTotalSizeWithoutIgnore$5.call(Unknown Source)
    at com.zen.plugin.lib.analysis.convert.NodeConvert.convert(NodeConvert.groovy:122)
    at com.zen.plugin.lib.analysis.convert.NodeConvert.convert(NodeConvert.groovy:60)
    at com.zen.plugin.lib.analysis.convert.NodeConvert$convert.call(Unknown Source)
    at com.zen.plugin.lib.analysis.task.DependencyTreeReportTask.outputHtml(DependencyTreeReportTask.groovy:86)
    at com.zen.plugin.lib.analysis.task.DependencyTreeReportTask.generate(DependencyTreeReportTask.groovy:40)
    at org.gradle.api.tasks.diagnostics.AbstractReportTask$2.generateReport(AbstractReportTask.java:73)
    at org.gradle.api.tasks.diagnostics.internal.ReportGenerator.generateReport(ReportGenerator.java:58)
    at org.gradle.api.tasks.diagnostics.AbstractReportTask.generate(AbstractReportTask.java:79)
    at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:75)
    at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.doExecute(DefaultTaskClassInfoStore.java:133)
    at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:126)
    at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:115)
    at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:623)
    at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:606)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61)
    ... 14 more
znyang commented 7 years ago

当依赖树中有pom类型节点时,会出现无法查找到源文件(jar/aar)的情况