पाठ 32 / 38
Maven pom.xml, Lifecycle व Gradle एक नज़र में
एक असली pom.xml पढ़ें — coordinate, dependency, plugin — क्रम में Maven lifecycle चरण देखें, और समकक्ष Gradle बिल्ड फ़ाइल देखें।
pom.xml की संरचना
groupId:artifactId:version रिपॉज़िटरी में आपके आर्टिफ़ैक्ट को विशिष्ट पहचान देते हैं। <dependencies> ज़रूरी लाइब्रेरी सूचीबद्ध करती हैं (<scope> सहित); <plugins> बिल्ड को विस्तारित करती हैं।
<project>
<groupId>com.acme</groupId>
<artifactId>orders-service</artifactId>
<version>1.0.0</version>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</project>क्रम में lifecycle
Maven का डिफ़ॉल्ट lifecycle चरणों को क्रम में चलाता है, हर चरण पिछले सभी को शामिल करता है: validate → compile → test → package → verify → install → deploy। mvn package कंपाइल व टेस्ट भी करता है; mvn install आर्टिफ़ैक्ट को स्थानीय ~/.m2 रिपॉज़िटरी में भी डालता है।
Gradle एक नज़र में
Gradle वही dependency छोटे Kotlin/Groovy DSL में व्यक्त करता है, tasks को तय चरणों की बजाय एक graph के रूप में मॉडल करता है, और केवल बदले हुए input वाले task दोबारा चलाता है — इसी वजह से दोहराए गए बिल्ड आमतौर पर तेज़ होते हैं।
dependencies {
implementation("org.springframework.boot:spring-boot-starter-web")
testImplementation("org.junit.jupiter:junit-jupiter")
}
tasks.test {
useJUnitPlatform()
}