หากคุณมีโปรเจ็กต์หลายโมดูลและคุณต้องการให้ชื่อของอาร์ติแฟกต์แตกต่างจากไดเร็กทอรี (ซึ่งตั้งค่าใน settings.gradle) ฉันคิดว่าแนวทางที่ดีกว่าคือการมี jar block สำหรับแต่ละโปรเจ็กต์ย่อย และคุณสามารถเขียน baseName ซึ่งจะเป็น artifact-id จากนั้นแทนที่จะเขียนบล็อกการเผยแพร่ / สิ่งพิมพ์ซ้ำสำหรับแต่ละโปรเจ็กต์ย่อยคุณต้องเขียนเพียงครั้งเดียวในบิลด์หลักอัพเกรดด้วยวิธีนี้:
สำหรับแต่ละโครงการย่อย build.gradle:
jar {
baseName = 'new-artifact-name-A' //A beacause you also have B, C modules...
}
ใน build.gradle หลัก:
publishing {
publications {
mavenJava(MavenPublication) {
artifactId jar.baseName
from components.java
}
}
}