我有一个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")
additional-feature-library / 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>
问题在于这些依赖项不存在(实际上核心库将发布到maven)。我想删除子项目Additional-feature-library / entities产生的依赖关系,并将该子项目中的类包含到* .jar文件中。有可能吗?