Implementierung eines einfachen Web-REST-API-Servers mit Spring Boot + MySQL - Qiita
Outline Lesen Sie das von Spring Initializr automatisch generierte build.gradle. Schauen Sie sich Gradle an, um es zu lesen.
References Gradle Build Tool Gradle User Guide
What is Gradle
Gradle ist ein Build-System in einer Java-Umgebung (JVM)
Verwenden Sie anstelle von Maven. Es importiert abhängige Bibliotheken, kompiliert, erstellt Jars, führt Tests durch und vieles mehr.
Install Wenn Sie IntelliJ verwenden, wird es zusammen installiert. Sie können es auch mit Homebrew installieren. Es war hier in meiner Umgebung.
% ~/.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 Bearbeiten Sie diese Datei grundsätzlich. Es ist wie pom.xml. Hier ist diejenige, die automatisch durch das Erstellen des Projekts generiert wird.
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')
}
Mal sehen, was in der Reihenfolge von oben geschrieben steht.
buildscript Abhängigkeiten auflösen Ein Block zum Auflösen der eigenen Abhängigkeiten von gradle.build. Es scheint, dass das von Spring Boot generierte Gradle-Projekt den Gradle-Plug von Spring Boot verwendet.
ext Wenn Sie eine Variable deklarieren.
repositories Geben Sie das Repository der abhängigen Bibliothek an. Sie geben das zentrale Repository von Maven an. Die Methode zur Angabe per URL ist wie folgt.
repositories {
maven {
url 'https://repo.spring.io/libs-snapshot'
}
}
[Kapitel 51 Abhängigkeitsmanagement](http://gradle.monochromeroad.com/docs/userguide/dependency_management.html#sec: Repositorys)
dependencies Wenn Sie die Bibliothek angeben. Sie verwenden den Springboot Gradle Plug.
apply Deklarieren Sie ein Plug-In. Diese beiden sind Plug-Ins, die vom Federstiefel abhängen.
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
org.springframework.boot Dies wurde hinzugefügt.
Application tasks
-----------------
bootRun - Runs this project as a Spring Boot application.
Eine Aufgabe, die sogar die Anwendung ausführt. Jetzt können Sie die Spring Boot-Anwendung starten.
io.spring.dependency-management Dieser Typ sieht toll aus. Ein Plug-In, das den Stücklistenmechanismus von Maven reproduziert. ※BOM (bill of materials) Ein Mechanismus, mit dem jede Bibliothek ihre eigenen Abhängigkeiten definiert. Kurz gesagt, wenn Sie eine Bibliothek haben, die Sie verwenden möchten, können Sie diese verwenden, indem Sie diese Bibliothek und die Stückliste dieser Bibliothek beschreiben.
Leider hat Gradle diesen Mechanismus nicht. Sie können es mit diesem Plug-In tun.
In diesem build.gradle wird jedoch keine Stückliste verwendet.
Wenn Sie es tatsächlich verwenden, verwenden Sie es in den folgenden Blöcken. Spring-Cloud-Stream-Beispiel
dependencyManagement {
imports {
mavenBom 'org.springframework.cloud:spring-cloud-stream-dependencies:Fishtown.BUILD-SNAPSHOT'
}
}
Die Version wird hier betrieben Unter Icchan befindet sich die Version von jdk
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8
repositories Mit dem Buildscript-Typ
dependencies Beschreiben Sie die abhängige Bibliothek. Die am Anfang geschriebene heißt Konfiguration. Kapitel 23 Java-Plugins
Name | Erweiterungsquelle | Zu verwendende Aufgaben | Bedeutung |
---|---|---|---|
compile | - | compileJava | Abhängigkeiten zur Kompilierungszeit |
runtime | compile | - | Laufzeitabhängigkeiten |
testCompile | compile | compileTestJava | Zusätzliche Abhängigkeiten beim Kompilieren des Tests |
testRuntime | runtime, testCompile | test | Zusätzliche Abhängigkeiten beim Ausführen von Tests |
archives | - | uploadArchives | Durch dieses Projekt erzeugte Artefakte(JAR-Datei usw.) |
default | runtime | - | Die Standardkonfiguration, die von Projekten verwendet wird, die von diesem Projekt abhängen. Es enthält die Artefakte und Abhängigkeiten, die dieses Projekt zur Laufzeit benötigt. |
Es gibt viele andere Möglichkeiten, es wie folgt zu schreiben.
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 Dies ist ein Skript.
% 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