Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to add Project Dependency using gradle?

Tags:

gradle

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'.

like image 342
Uma Mageshwari Avatar asked Jul 30 '14 06:07

Uma Mageshwari


2 Answers

The documentation uses the following syntax:

dependencies {
    compile project(':DbServices')
}
like image 160
JB Nizet Avatar answered Oct 12 '22 18:10

JB Nizet


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.

like image 42
Peter Niederwieser Avatar answered Oct 12 '22 18:10

Peter Niederwieser