У меня есть мультипроект gradle со следующей структурой:
root
│
├── core-library
│ └── build.gradle
│
├── additional-feature-library
│ │
│ ├── entities
│ │ └── build.gradle
│ │
│ └── build.gradle
│
├── sample-android-app
│ └── build.gradle
│
├── build.gradle
└── settings.gradle
settings.gradle:
include(":core-library")
include(":additional-feature-library")
include(":additional-feature-library:entities")
include(":sample-android-app")
дополнительная библиотека функций / build.gradle:
plugins {
id("java-library")
id("kotlin")
id("maven-publish")
}
dependencies {
implementation(project(":additional-feature-library:entities"))
implementation(project(":core-library"))
// ... other dependencies from maven
}
publishing {
publications {
maven(MavenPublication) {
groupId = "com.example"
artifactId = "additional-feature-library"
version = "1.0.0"
from components.java
}
}
}
Когда я выполняю задачу Additional-Feature-Library / publishToMavenLocal, он генерирует файл * .jar с классами из Additional-Feature-Library и POM со следующими зависимостями:
<dependencies>
<dependency>
<groupId>root.additional-feature-library</groupId>
<artifactId>entities</artifactId>
<version>unspecified</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>root</groupId>
<artifactId>core-library</artifactId>
<version>1.0.2</version>
<scope>runtime</scope>
</dependency>
Проблема в том, что Эти зависимости не существуют (на самом деле core-library будет опубликована в maven). Я хотел бы удалить зависимость, создаваемую подпроектом Additional-Feature-Library / entity и включить классы из этого подпроекта в файл * .jar. Возможно ли это?