I've two projects as dependencies: A, B. ( NOT SUB-projects but EXTERNAL projects )
My third project C, depends on both A and B.
I've already defined the settings.gradle in this way:
settings.gradle
rootProject.name = 'project_C'
include ':common_library'
project(":project_A").projectDir = file("../project_A")
include ':project_A'
project(":project_B").projectDir = file("../project_B")
build.gradle
// ************** Include dependencies as local .jars
implementation fileTree(include: ['*.jar'], dir: 'lib')
// ************** Compile the project on which this depends on
implementation project(':project_A')
implementation project(':project_B')
// Use JUnit test framework
testImplementation 'junit:junit:4.12'
}
// *********** MODIFY the standard JAR task, including Main file (for executable jars) and pack all it's dependencies
jar {
from {
(configurations.runtime).collect {
configurations.runtime.filter( {! (it.name =~ /.*\.pom/ )}).collect {
it.isDirectory() ? it : zipTree(it)
}
}
}
manifest {
attributes "Main-Class": "Main"
}
}
At this point, it builds with success.
But when i try to execute it as jar, it gives me errors about "not included dependencies" related to the project_A and project_B classes.
Someone that has already faced off this issue? Thanks!