gpt4 book ai didi

java - 在 Spring Initializr Gradle 项目中启用 Vaadin 流生产模式

转载 作者:行者123 更新时间:2023-12-03 03:11:21 26 4
gpt4 key购买 nike

我在尝试设置 com.vaadin:vaadin-spring-boot-starter 时遇到了困惑Gradle 项目进入生产模式。

该项目是多模块项目的一部分,其(简化)build.gradle文件如下所示:

buildscript {
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
}
}

apply plugin: 'java'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'

dependencyManagement {
imports {
mavenBom "com.vaadin:vaadin-bom:${vaadinVersion}"
}
}

dependencies {
compile("org.springframework.boot:spring-boot-starter-web")
compile("org.springframework.boot:spring-boot-starter-actuator")
compile("com.vaadin:vaadin-spring-boot-starter")

// ... futher more
}


我发现了几个关注这个主题的项目和文档,例如:
  • Vaadin Maven Plugin
  • Flow Maven Plugin
  • Gradle Vaadin Flow Plugin
  • Setting Flow into Production Mode with Maven

  • 我目前的状态是我添加了 vaadin.productionMode=trueapplication.yaml文件,这会在 HTTP GET 上导致以下错误:

    Failed to find the bundle manifest file 'frontend://vaadin-flow-bundle-manifest.json' in the servlet context for 'ES6' browsers. If you are running a dev-mode servlet container in maven e.g. jetty:run change it to jetty:run-exploded. If you are not compiling frontend resources, include the 'vaadin-maven-plugin' in your build script. Otherwise, you can skip this error either by disabling production mode, or by setting the servlet parameter 'original.frontend.resources=true'.



    所以总的来说,我认为我走对了。
  • Setting the servlet parameter 'original.frontend.resources=true'消除了错误,但这对我来说似乎是一种解决方法,因此我想避免它。
  • Disabling production mode显然不是一个选项:-)

  • 所以我的问题是:我怎样才能包含 vaadin-maven-plugin在我的 Gradle 构建脚本中。由于我只使用 Flow,我应该使用 flow-maven-plugin ?

    更新 1:我想设置一个 Spring Initializr将具有 Vaadin 依赖关系的 Gradle 项目转换为生产模式。我不想创建一个新的 gradle-vaadin-flow-plugin项目。

    最佳答案

    vaadin-maven-plugin 的 Gradle 等价物将是 com.devsoap.vaadin-flow (1),还需要配置vaadin { productionMode = true }build.gradle (2)

    还可以配置 gradle 属性,使其依赖于构建时间参数,如 here 所述。 :配置vaadin.productionMode = findProperty('productionMode') ?: falsebuild.gradle , 并在 @VaadinServletConfiguration 中添加一个占位符在构建项目时将对其进行预处理。

    关于java - 在 Spring Initializr Gradle 项目中启用 Vaadin 流生产模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56449910/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com