如何在某些弹簧剖面中禁用飞路?

时间:2017-05-31 14:43:53

标签: java spring spring-boot flyway spring-profiles

现在我有使用ms sql server的spring-boot应用程序。我们使用flyway fr迁移。

我想为测试添加其他配置文件。我想从实体类生成表。并且不使用飞路。

我在application.yaml

中尝试使用smth这样写
spring:
  profiles: test
  jpa:
      generate-ddl: true
      hibernate:
  datasource:
    url: jdbc:h2:mem:test_db;MODE=MSSQLServer
    username: sa
    password:

但是飞路无论如何都要开始

5 个答案:

答案 0 :(得分:61)

仅供参考,对于任何来这里寻找此事的人,the property name has changed for Spring Boot 2.0

application.properties格式:

spring.flyway.enabled=false

application.yml格式:

spring:
    flyway:
        enabled: false

更新:要在特定配置文件中禁用flyway,您可以将该属性放在特定于该配置文件的属性文件中。例如,如果您的个人资料被称为" abc",您可以将其放入application-abc.properties。查看Spring's documentation on Profile-specific properties以更清楚地了解如何命名文件。通常,格式为application-{profileName}.properties

答案 1 :(得分:42)

  

这个答案适用于Spring Boot 1.X版本。如果您正在寻找 Spring Boot 2.X 的答案,您应该看到below answer

如果需要flyway.enabled,则有一个属性可用于spring-boot以禁用flyway。默认情况下为true。

您可以拥有特定于配置文件的配置,在您的情况下,它应该命名为application-test.yml。如果配置文件处于活动状态,此配置可以禁用flyway你只需要声明如下:

flyway:
  enabled: false

如果您在通用配置中指定测试配置文件,只需将其添加到其根目录。

答案 2 :(得分:0)

JIC当前版本的spring boot 2.x的官方文档: Common application properties并查看#FLYWAY 标签,您会发现许多可以帮助您的属性。

t1 = Thread(target=check_incoming_messages_to_client,
            args=(incoming_chat_messages[length-1], uri_str, kill_threads_subscript))

答案 3 :(得分:0)

我有多个个人资料,例如

  1. application-integration.yml
  2. application.yml

在 application.yml 中

spring:
  profiles:
    active: ${ENVIRONMENT_NAME:local}
  flyway:
    enabled: true
    user: ${ORACLE_DB_USER:#{null}}
    password: ${ORACLE_DB_PASS:#{null}}
    locations: classpath:db/migration
    url: ${DB_URL:#{null}}
    driver-class-name: oracle.jdbc.OracleDriver
    #    skipExecutingMigrations: true
    tablespace: MY_TABLESPACE_NAME
    baselineOnMigrate: true
    schemas: MY_SCHEMA_NAME

在 application-integration.yml 中

spring:
  flyway:
    enabled: false

当我运行它时,它不会禁用飞路迁移。我使用的是 SpringBoot2.3.4

答案 4 :(得分:-1)

此处application.yaml的示例定义了2个配置文件:
  1. enable_flyway_profile-启用飞行通道
  2. disable_flyway_profile-禁用飞行路线

spring:
  profiles:
    active: "enable_flyway_profile"
  flyway:
    enable: true
  ....

---

spring:
  profiles:
    active: "disable_flyway_profile"
  flyway:
    enable: false
  ....