[JAVA] Verwenden Sie thymeleaf3 mit parent, ohne Spring-Boot-Starter-Parent in Spring Boot anzugeben

Wie in der Spring-Dokumentation angegeben, können Sie bei Verwendung von Thymeleaf 3 mit Spring Boot das übergeordnete Element Spring-Boot-Starter-Parent verwenden, indem Sie es in solchen Eigenschaften angeben.

<properties>
    <thymeleaf.version>3.0.2.RELEASE</thymeleaf.version>
    <thymeleaf-layout-dialect.version>2.1.1</thymeleaf-layout-dialect.version>
</properties>

Spring-Boot-Starter-Parent kann jedoch nicht als Parent angegeben werden, wenn der Pom, der als Parent angegeben werden soll, von der Firma festgelegt wird. In diesem Fall war die Einstellung zur Verwendung von Thymeleaf 3 kompliziert. Notieren Sie sich dies.

Auch in hier Obwohl es geschrieben ist, schreiben Sie Spring-Boot-Abhängigkeit in <dependencyManagement>, wenn es nicht als übergeordnetes Element angegeben ist

<dependencyManagement>
     <dependencies>
        <dependency>
            <!-- Import dependency management from Spring Boot -->
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-dependencies</artifactId>
            <version>1.5.6.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

Es wird die Version der Abhängigkeiten angegeben, die für Spring Boot erforderlich sind. Diejenigen, die standardmäßig eingeben, werden in hier oder im Pom der Hauptfamilie geschrieben. Wenn Sie es weiterhin verwenden, wird thymeleaf 2.1.5 installiert. Da ich 3 verwenden möchte, schreiben Sie die Version des Moduls, das Sie vor Spring-Boot-Abhängigkeiten ändern möchten, in "" und überschreiben Sie es.

<properties>
    <spring-boot.version>1.5.6.RELEASE</spring-boot.version>
    <thymeleaf.version>3.0.7.RELEASE</thymeleaf.version>
    <thymeleaf-spring4.version>3.0.7.RELEASE</thymeleaf-spring4.version>
    <thymeleaf-layout-dialect.version>2.2.2</thymeleaf-layout-dialect.version>
  </properties>
<dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.thymeleaf</groupId>
        <artifactId>thymeleaf</artifactId>
        <version>${thymeleaf.version}</version>
      </dependency>
      <dependency>
        <groupId>nz.net.ultraq.thymeleaf</groupId>
        <artifactId>thymeleaf-layout-dialect</artifactId>
        <version>${thymeleaf-layout-dialect.version}</version>
      </dependency>
      <dependency>
        <groupId>org.thymeleaf</groupId>
        <artifactId>thymeleaf-spring4</artifactId>
        <version>${thymeleaf-spring4.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-dependencies</artifactId>
        <version>${spring-boot.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>

Es ist so. Wenn Sie nur in "" schreiben, wird das wesentliche Modul nicht installiert Ich werde das zu installierende Modul in "<Abhängigkeiten>" schreiben.

<dependencies>
    <dependency>
   <dependency>
      <groupId>org.thymeleaf</groupId>
      <artifactId>thymeleaf-spring4</artifactId>
    </dependency>
    <dependency>
      <groupId>nz.net.ultraq.thymeleaf</groupId>
      <artifactId>thymeleaf-layout-dialect</artifactId>
    </dependency>
  </dependencies>

So was! Wenn "Spring-Boot-Starter-Thymeleaf" in pom geschrieben ist, löschen Sie es.

Auslösen

Zuerst wollte ich LocalDateTime mit thymeleaf verwenden, also habe ich thymeleaf-extras-java8time eingefügt. Wenn from in # temporals.format (from, 'yyyyMMdd') null ist, wenn es sich um ein 2-System handelt, wird IllegalArgumentException: Format kann nicht auf null angewendet angezeigt und es ist schwierig, 3.0 zu verwenden. Ich fand, dass es in 1 gelöst wurde. This Das 3-System von thymeleaf-extras-java8time muss jedoch thymeleaf 3 sein. Wenn ich also vorerst dachte, dass ich die Version von thymeleaf in den Eigenschaften auf 3 setzen sollte, habe ich einen Fehler wie "ClassNotFoundException IExpressionObjectDialect" erhalten und werde dies untersuchen Es scheint, dass die Version noch Thymeleaf 2 war, als ich sie gerade in den Eigenschaften angegeben habe.

Recommended Posts

Verwenden Sie thymeleaf3 mit parent, ohne Spring-Boot-Starter-Parent in Spring Boot anzugeben
Verwenden Sie Spring JDBC mit Spring Boot
Verwenden Sie die Standardauthentifizierung mit Spring Boot
Beginnend mit Spring Boot 0. Verwenden Sie Spring CLI
Verwendung von Thymeleaf mit Spring Boot
Lösen Sie die Thymeleaf-Syntaxprüfung in Spring Boot
Verwenden Sie die DynamoDB-Abfragemethode mit Spring Boot
Implementieren Sie CRUD mit Spring Boot + Thymeleaf + MySQL
Implementieren Sie die Paging-Funktion mit Spring Boot + Thymeleaf
Verwenden Sie den Cache mit EhCashe 2.x mit Spring Boot
Führen Sie die WEB-Anwendung mit Spring Boot + Thymeleaf aus
Testen Sie den Controller mit Mock MVC im Spring Boot
Asynchrone Verarbeitung mit regelmäßiger Ausführung in Spring Boot
Verwenden Sie den Thymeleaf-Textvorlagenmodus von Spring Boot
Verwendung von MyBatis2 (iBatis) mit Spring Boot 1.4 (Spring 4)
Servlet-Filter mit Spring Boot verwenden [Spring Boot 1.x, 2.x kompatibel]
Erstellen Sie eine CRUD-App mit Spring Boot 2 + Thymeleaf + MyBatis
Erstellen Sie Ihr eigenes Dienstprogramm mit Thymeleaf mit Spring Boot
[JAVA] [Spring] [MyBatis] Verwenden Sie IN () mit SQL Builder
Organisieren Sie die Unterschiede im Verhalten von @NotBlank, @NotEmpty und @NotNull mit Spring Boot + Thymeleaf
Verwenden Sie Interceptor im Frühjahr
Mit Spring Boot herunterladen
SSO mit GitHub OAuth in der Spring Boot 1.5.x-Umgebung
Verwendung von CommandLineRunner im Spring Batch von Spring Boot
Bis Sie mit der Entwicklung mit Spring Boot in Eclipse 1 beginnen
Bis Sie mit der Entwicklung mit Spring Boot in Eclipse 2 beginnen
Erstellen einer Datenbankumgebung mit Docker in Spring Boot (IntellJ)
Datei-Upload mit Spring Boot (keine mehrteilige Datei verwenden)
Legen Sie den Kontextparameter in Spring Boot fest
Generieren Sie mit Spring Boot einen Barcode
Hallo Welt mit Spring Boot
Implementieren Sie GraphQL mit Spring Boot
Behandeln Sie die Java 8-Datums- und Uhrzeit-API mit Thymeleaf mit Spring Boot
Hallo Welt mit Spring Boot!
Spring Boot 2 Multiprojekt mit Gradle
Verwendung derselben Mapper-Klasse in mehreren Datenquellen mit Spring Boot + MyBatis
Führen Sie LIFF mit Spring Boot aus
SNS-Login mit Spring Boot
[Java] Thymeleaf Basic (Spring Boot)
Datei-Upload mit Spring Boot
Spring Boot beginnt mit dem Kopieren
Bis INSERT und SELECT für Postgres mit Spring Boot und Thymianblatt
Aufrufen und Verwenden der API in Java (Spring Boot)
Spring Boot beginnend mit Docker
Spring Boot + Springfox Springfox-Boot-Starter 3.0.0 Verwendung
Hallo Welt mit Spring Boot
Setzen Sie Cookies mit Spring Boot
Wichtige Änderungen in Spring Boot 1.5
Modul mit Spring Boot hinzufügen
Erste Schritte mit Spring Boot
NoHttpResponseException in Spring Boot + WireMock
Erstellen Sie mit Spring Boot einen Mikrodienst
Mail mit Spring Boot verschicken
Verwenden Sie im Spring Boot @ControllerAdvice, @ExceptionHandler, HandlerExceptionResolver, um Ausnahmen abzufangen
So steuern Sie Transaktionen in Spring Boot ohne Verwendung von @Transactional
Einfache Entwicklung von Webanwendungen mit STS und Spring Boot. In 10 Minuten.
[Linux: Ruby] Verwenden Sie den Treiber mit Selen, ohne den Pfad des Browsertreibers anzugeben
Siehe das relative Umleitungsverhalten mit der Einstellung server.tomcat.use-relative-redirects in Spring Boot
Vergleiche Hallo Welt! Mit Spring Boot mit Java, Kotlin und Groovy
Wie man Lombok im Frühling benutzt
Frühlingsstiefel Hallo Welt in Eclipse