Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Springboot 2.x with Gradle 6.x multi-module setup using conventions

NotificationsYou must be signed in to change notification settings

amitmisra16/gradle-multi-module-project

Repository files navigation

Setup project usinggradle init for the initial setup.

Ensure latest gradle is available in current shell
$ sdk use gradle 6.7Using gradle version 6.7in this shell.$ gradle -v------------------------------------------------------------Gradle 6.7------------------------------------------------------------Build time:   2020-10-14 16:13:12 UTCRevision:     312ba9e0f4f8a02d01854d1ed743b79ed996dfd3Kotlin:       1.3.72Groovy:       2.5.12Ant:          Apache Ant(TM) version 1.10.8 compiled on May 10 2020JVM:          1.8.0_265 (Oracle Corporation 25.265-b01)OS:           Linux 5.4.0-52-generic amd64
Check JDK version
$ java -versionopenjdk version"1.8.0_265"OpenJDK Runtime Environment (build 1.8.0_265-b01)OpenJDK 64-Bit Server VM (build 25.265-b01, mixed mode)
Using gradle init for generating multi-module folder structure
$ gradle initSelecttype of project to generate:  1: basic  2: application  3: library  4: Gradle pluginEnter selection (default: basic) [1..4] 2Select implementation language:  1: C++  2: Groovy  3: Java  4: Kotlin  5: Scala  6: SwiftEnter selection (default: Java) [1..6] 3Split functionality across multiple subprojects?:  1: no - only one application project  2: yes - application and library projectsEnter selection (default: no - only one application project) [1..2] 2Select build script DSL:  1: Groovy  2: KotlinEnter selection (default: Groovy) [1..2] 1Project name (default: gradle-multi-module-project):Source package (default: gradle.multi.module.project):> Task :initGet morehelp with your project: https://docs.gradle.org/6.7/samples/sample_building_java_applications_multi_project.htmlBUILD SUCCESSFULin 27s2 actionable tasks: 2 executed
Checking multi-module project structure
$ ./gradlew -q projects------------------------------------------------------------Root project------------------------------------------------------------Root project'gradle-multi-module-project'+--- Project':app'+--- Project':list'\--- Project':utilities'To see a list of the tasks of a project, run gradlew<project-path>:tasksFor example, try running gradlew :app:tasks
Executing gradle build
$ ./gradlew buildBUILD SUCCESSFULin 27s10 actionable tasks: 10 executed
Add springboot plugin and dependency management plugin dependencies to buildscr/build.gradle
dependencies {    implementation('org.springframework.boot:spring-boot-gradle-plugin:2.3.3.RELEASE')    implementation('io.spring.gradle:dependency-management-plugin:1.0.8.RELEASE')}
Adding springboot and dependency manager plugins to java application convention script
plugins {// Apply the common convention plugin for shared build configuration between library and application projects.    id'gradle.multi.module.project.java-common-conventions'// Apply the application plugin to add support for building a CLI application in Java.// id 'application'// Overriding application plugin with springboot gradle plugin    id'org.springframework.boot'id'io.spring.dependency-management'}
Adding springboot application annotation to App.java
importorg.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplicationpublicclassApp {publicstaticvoidmain(String[]args) {LinkedListtokens;tokens =split(getMessage());System.out.println(join(tokens));    }}
Using application convention for defining springboot and Junit dependencies
dependencies {    implementation'org.springframework.boot:spring-boot-starter-web'testImplementation('org.springframework.boot:spring-boot-starter-test') {excludegroup:'org.junit.vintage',module:'junit-vintage-engine'}}bootJar {    enabled=true}
Gradle build for multi-module projects post convention and build.gradle changes
# Running springboot application$ ./gradlew clean build&& ./gradlew :app:bootRunBUILD SUCCESSFULin 6s13 actionable tasks: 13 executed> Task :app:bootRunHello World!BUILD SUCCESSFULin 1s6 actionable tasks: 1 executed, 5 up-to-date

About

Springboot 2.x with Gradle 6.x multi-module setup using conventions

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages


[8]ページ先頭

©2009-2025 Movatter.jp