Implémentation d'un serveur API REST Web simple avec Spring Boot + MySQL --Qiita
Outline Lisez le build.gradle généré automatiquement par Spring Initializr. Jetez un œil à Gradle pour lire.
References Gradle Build Tool Gradle User Guide
What is Gradle
Gradle est un système de construction dans un environnement Java (JVM)
Utilisez à la place de maven. Il importe des bibliothèques dépendantes, compile, génère des fichiers JAR, exécute des tests, etc.
Install Si vous utilisez IntelliJ, il est installé ensemble. Vous pouvez également l'installer avec Homebrew. C'était ici dans mon environnement.
% ~/.gradle/wrapper/dists/gradle-4.5.1-bin/a5vbgfvpwtoqz8v2cdivxz28k/gradle-4.5.1/bin/gradle -v
------------------------------------------------------------
Gradle 4.5.1
------------------------------------------------------------
Build time: 2018-02-05 13:22:49 UTC
Revision: 37007e1c012001ff09973e0bd095139239ecd3b3
Groovy: 2.4.12
Ant: Apache Ant(TM) version 1.9.9 compiled on February 2 2017
JVM: 1.8.0_162 (Oracle Corporation 25.162-b12)
OS: Mac OS X 10.13.3 x86_64
build.gradle Modifiez essentiellement ce fichier. C'est comme pom.xml. Voici celui généré automatiquement lors de la création du projet.
build.gradle
buildscript {
ext {
springBootVersion = '2.0.2.RELEASE'
}
repositories {
mavenCentral()
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
}
}
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
dependencies {
compile('org.springframework.boot:spring-boot-starter-data-jpa')
compile('org.springframework.boot:spring-boot-starter-web')
runtime('mysql:mysql-connector-java')
compileOnly('org.projectlombok:lombok')
testCompile('org.springframework.boot:spring-boot-starter-test')
}
Voyons ce qui est écrit dans l'ordre du haut.
buildscript Resolve Dependencies Un bloc pour résoudre les propres dépendances de gradle.build. Il semble que le projet Gradle généré par Spring Boot utilise le plug Gradle de Spring Boot.
ext Lorsque vous déclarez une variable.
repositories Spécifiez le référentiel de la bibliothèque dépendante. Vous spécifiez le référentiel central de Maven. La méthode de spécification par URL est la suivante.
repositories {
maven {
url 'https://repo.spring.io/libs-snapshot'
}
}
[Chapitre 51 Gestion des dépendances](http://gradle.monochromeroad.com/docs/userguide/dependency_management.html#sec: référentiels)
dependencies Lorsque vous spécifiez la bibliothèque. Vous utilisez la prise de gradle Springboot.
apply Déclarez un plug-in. Ces deux plug-ins dépendent de Spring Boot.
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
org.springframework.boot Cela a été ajouté.
Application tasks
-----------------
bootRun - Runs this project as a Spring Boot application.
Une tâche qui exécute même l'application. Vous pouvez maintenant lancer l'application Spring Boot.
io.spring.dependency-management Ce mec a l'air super. Un plug-in qui reproduit le mécanisme de BOM (nomenclature) de Maven. ※BOM (bill of materials) Un mécanisme par lequel chaque bibliothèque définit ses propres dépendances. En bref, si vous souhaitez utiliser une bibliothèque, vous pouvez l'utiliser en décrivant cette bibliothèque et la nomenclature de cette bibliothèque.
Malheureusement, Gradle n'a pas ce mécanisme. Vous pouvez le faire avec ce plug-in.
Cependant, la nomenclature n'est pas utilisée dans cette build.gradle.
Lorsque vous l'utilisez réellement, utilisez-le dans les blocs suivants. exemple de spring-cloud-stream
dependencyManagement {
imports {
mavenBom 'org.springframework.cloud:spring-cloud-stream-dependencies:Fishtown.BUILD-SNAPSHOT'
}
}
La version sera exploitée ici Ci-dessous Icchan se trouve la version de jdk
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8
repositories Avec le gars de buildscript
dependencies Décrivez la bibliothèque dépendante. Celui écrit au début est appelé configuration. Chapitre 23 Plugins Java
Nom | Source d'extension | Tâches à utiliser | sens |
---|---|---|---|
compile | - | compileJava | Dépendances au moment de la compilation |
runtime | compile | - | Dépendances d'exécution |
testCompile | compile | compileTestJava | Dépendances supplémentaires lors de la compilation du test |
testRuntime | runtime, testCompile | test | Dépendances supplémentaires lors de l'exécution des tests |
archives | - | uploadArchives | Artefacts générés par ce projet(fichier jar, etc.) |
default | runtime | - | La configuration par défaut utilisée par les projets qui dépendent de ce projet. Il contient les artefacts et les dépendances dont ce projet a besoin au moment de l'exécution. |
Il existe de nombreuses autres façons de l'écrire comme suit.
dependencies {
runtime group: 'org.springframework', name: 'spring-core', version: '2.5'
runtime 'org.springframework:spring-core:2.5',
'org.springframework:spring-aop:2.5'
runtime(
[group: 'org.springframework', name: 'spring-core', version: '2.5'],
[group: 'org.springframework', name: 'spring-aop', version: '2.5']
)
runtime('org.hibernate:hibernate:3.0.5') {
transitive = true
}
runtime group: 'org.hibernate', name: 'hibernate', version: '3.0.5', transitive: true
runtime(group: 'org.hibernate', name: 'hibernate', version: '3.0.5') {
transitive = true
}
}
Hello World Ceci est un script.
% cat build.gradle
task hello {
doLast {
println 'Hello world!'
}
}
% gradle hello
> Task :hello
Hello world!
BUILD SUCCESSFUL in 0s
1 actionable task: 1 executed
Recommended Posts