I am facing the following problem. I need to build the multi-project, but when I try to add the dependency I got the following error.
Root Project's settings.gradle:
include 'DbServices','HelloWeb'
Root Project's build.gradle:
apply plugin: 'java'
project(':HelloWeb') {
dependencies {
compile (':DbServices')
}
}
DbServices's build.gradle:
apply plugin: 'java'
HelloWeb's build.gradle:
apply plugin: 'java'
However, then I am getting the following error when synchronize with the gradle tasks on Root Project:
Executing command: "tasks"
FAILURE: Build failed with an exception.
Where: Build file 'D:\MyDeployment\RootProject\build.gradle' line: 21
What went wrong: A problem occurred evaluating root project 'RootProject'.
Could not find method compile() for arguments [:DbServices] on org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler_Decorated@3b3e3b3e.
Try: Run with --info or --debug option to get more log output.
Exception is: org.gradle.api.GradleScriptException: A problem occurred evaluating root project 'RootProject'.
The documentation uses the following syntax:
dependencies {
compile project(':DbServices')
}
The notion of compile
dependencies is introduced by the java
plugin. Therefore, this plugin has to be applied (to the HelloWeb project) before declaring dependencies. The easiest way to fix this is to move the dependencies
block into HelloWeb's build.gradle
. Additionally, the project dependency syntax needs to be fixed according to JB Nizet's answer.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With