In Spring Boot befinden sich einige Gläser im Muster von spring-boot-starter
. Alle diese Gläser enthalten keine Pakete. Was ist ihre Verwendung?
In Maven-POMs werden die folgenden Abhängigkeiten hinzugefügt:
Welche Spring Boot-Gläser brauche ich eigentlich, um die Funktionalität dieser Gläser zu verwenden? Mein Projekt hat kein Abhängigkeitsmanagement. Mein Projekt ist eine Spring MVC-Anwendung, die Spring Security verwendet.
Diese Abhängigkeiten sollen einen einheitlichen Eintrag für ein Ad-hoc-Skelettprojekt mit allen erforderlichen Abhängigkeiten bereitstellen.
Sie sollten normalerweise von Ihrem Projektdeskriptor (pom.xml) geerbt werden, damit Sie alle übergeordneten Abhängigkeiten mit konfigurierten Versionen erhalten. Keine Belastung mehr auf der Entwicklerseite:
Starter-POMs sind ein Satz praktischer Abhängigkeits-Deskriptoren, die Sie in Ihre Anwendung aufnehmen können. Sie erhalten eine zentrale Anlaufstelle für die gesamte Spring- und verwandte Technologie, die Sie benötigen, ohne den Beispielcode durchzusehen und das Einfügen von Abhängigkeiten mit Abhängigkeiten zu kopieren. Wenn Sie zum Beispiel Spring und JPA für den Datenbankzugriff verwenden möchten, fügen Sie einfach die Spring-Boot-Starter-data-jpa-Abhängigkeit in Ihr Projekt ein.
Referenz, Spring Boot Starter POM.
Diese POMs können verwendet werden, um die Abhängigkeiten zu synthetisieren, die für eine bestimmte Art von Projekt verwendet werden können, z. Für ein einfaches Spring-MVC-Projekt müssen die folgenden Artefakte enthalten sein (Lesen von Spring-Boot-Starter, Spring-Boot-Starter-Web, Spring-Boot-Starter-Sicherheit). beziehungsweise):
Die Artefakte können nahtlos in den Suchergebnissen im Verzeichnis maven central repository gefunden werden.
Beachten Sie, dass es sich hierbei möglicherweise nicht um eine vollständige Referenzliste handelt, da einige Komponenten möglicherweise fehlerhaft sind, sodass die Artefakte aktualisiert werden müssen.
Einfach ausgedrückt, handelt es sich um Abhängigkeitsdeskriptoren, die transitive Abhängigkeiten mit Versionen auflisten, die getestet wurden, um zusammenzuarbeiten, um Zeit zu sparen, indem Sie versuchen, Bibliotheken zusammenzustellen, die sich um einige Facetten einer Anwendung kümmern.
Sie können auch maven die Abhängigkeiten angeben, die für die verschiedenen Spring-Boot-Starter- * erforderlich sind, die in der Spring-Boot-Projektdatei pom.xml definiert sind
mvn dependency:resolve
Zum Beispiel mit Feder 1.5.8.RELEASE werden die folgenden Gläser (und Versionen) verwendet
Das Hinweisformat ist Gruppen-ID: Artefakt-ID: Version: Umfang
The following files have been resolved:
com.fasterxml.jackson.core:jackson-annotations:jar:2.8.0:compile
org.jboss.logging:jboss-logging:jar:3.3.1.Final:compile
aopalliance:aopalliance:jar:1.0:compile
org.hamcrest:hamcrest-library:jar:1.3:test
org.mockito:mockito-core:jar:1.10.19:test
org.assertj:assertj-core:jar:2.6.0:test
org.springframework:spring-beans:jar:4.3.12.RELEASE:compile
org.springframework.boot:spring-boot-test:jar:1.5.8.RELEASE:test
org.springframework.boot:spring-boot-autoconfigure:jar:1.5.8.RELEASE:compile
org.springframework.boot:spring-boot-starter-Tomcat:jar:1.5.8.RELEASE:compile
org.skyscreamer:jsonassert:jar:1.4.0:test
org.yaml:snakeyaml:jar:1.17:runtime
com.fasterxml:classmate:jar:1.3.4:compile
org.slf4j:jcl-over-slf4j:jar:1.7.25:compile
org.springframework.boot:spring-boot-starter-test:jar:1.5.8.RELEASE:test
org.hamcrest:hamcrest-core:jar:1.3:test
com.jayway.jsonpath:json-path:jar:2.2.0:test
org.Apache.Tomcat.embed:Tomcat-embed-websocket:jar:8.5.23:compile
org.springframework.boot:spring-boot:jar:1.5.8.RELEASE:compile
org.Apache.Tomcat:tomcat-annotations-api:jar:8.5.23:compile
org.springframework:spring-context:jar:4.3.12.RELEASE:compile
org.hibernate:hibernate-validator:jar:5.3.5.Final:compile
javax.validation:validation-api:jar:1.1.0.Final:compile
org.Apache.Tomcat.embed:Tomcat-embed-core:jar:8.5.23:compile
org.springframework.boot:spring-boot-starter-logging:jar:1.5.8.RELEASE:compile
com.fasterxml.jackson.core:jackson-core:jar:2.8.10:compile
org.ow2.asm:asm:jar:5.0.3:test
org.Apache.Tomcat.embed:Tomcat-embed-el:jar:8.5.23:compile
org.slf4j:log4j-over-slf4j:jar:1.7.25:compile
org.springframework:spring-web:jar:4.3.12.RELEASE:compile
ch.qos.logback:logback-core:jar:1.1.11:compile
org.springframework.security:spring-security-core:jar:4.2.3.RELEASE:compile
org.springframework:spring-test:jar:4.3.12.RELEASE:test
org.springframework.boot:spring-boot-starter:jar:1.5.8.RELEASE:compile
org.springframework.security:spring-security-test:jar:4.2.3.RELEASE:test
org.springframework.boot:spring-boot-starter-web:jar:1.5.8.RELEASE:compile
org.springframework:spring-core:jar:4.3.12.RELEASE:compile
org.springframework.boot:spring-boot-starter-security:jar:1.5.8.RELEASE:compile
org.springframework.boot:spring-boot-actuator:jar:1.5.8.RELEASE:compile
org.objenesis:objenesis:jar:2.1:test
org.springframework:spring-expression:jar:4.3.12.RELEASE:compile
org.springframework.boot:spring-boot-starter-actuator:jar:1.5.8.RELEASE:compile
org.springframework.security:spring-security-config:jar:4.2.3.RELEASE:compile
org.springframework.security:spring-security-web:jar:4.2.3.RELEASE:compile
org.springframework:spring-aop:jar:4.3.12.RELEASE:compile
junit:junit:jar:4.12:test
org.slf4j:slf4j-api:jar:1.7.25:compile
net.minidev:json-smart:jar:2.2.1:test
org.springframework.boot:spring-boot-test-autoconfigure:jar:1.5.8.RELEASE:test
net.minidev:accessors-smart:jar:1.1:test
org.springframework:spring-webmvc:jar:4.3.12.RELEASE:compile
ch.qos.logback:logback-classic:jar:1.1.11:compile
org.slf4j:jul-to-slf4j:jar:1.7.25:compile
com.fasterxml.jackson.core:jackson-databind:jar:2.8.10:compile
Ignorieren Sie einfach die Gläser, die einen Testumfang für die Bereitstellung haben.
Wenn Sie kein Spring-Boot-Projekt zur Hand haben, erstellen Sie einfach unter Spring Initializr ein Projekt, mit den Spring Boot-Startern, die Sie benötigen. Außerdem wird maven wrapper verwendet, der den Befehl maven umschließt, wodurch Sie Zeit sparen, wenn Sie maven separat einrichten und installieren.
Laden Sie also einfach die Zip-Datei von Spring Initializr herunter, entpacken Sie eine Eingabeaufforderung und öffnen Sie sie im entpackten Ordner. Verwenden Sie stattdessen den folgenden Befehl
Für Linux/Mac OS
./mvnw dependency:resolve
Für Windows
./mvnw.cmd dependency:resolve