为了账号安全,请及时绑定邮箱和手机立即绑定

如何解决 Spring Boot 应用程序中的 FlyWay 许可问题

如何解决 Spring Boot 应用程序中的 FlyWay 许可问题

长风秋雁 2022-06-15 10:37:07
我使用 FlyWay 企业许可证的 Spring Boot 应用程序无法启动并显示以下消息:Caused by: org.flywaydb.core.api.FlywayException: Missing license key. Ensure flyway.licenseKey is set to a valid Flyway license key ("FL01" followed by 512 hex chars)许可证实际上并没有丢失。我尝试将两者都设置为环境变量和 application.yml 文件,名称为 spring >> flyway >> licenseKey,但它根本没有反应。有什么想法可以隐藏问题吗?其他环境变量由 spring boot 考虑用于数据库,所以这不应该是问题。
查看完整描述

1 回答

?
慕标琳琳

TA贡献1830条经验 获得超9个赞

在 GitHub 上有一个很好的讨论。根据那个问题,Spring Boot 2.2 的路线图上似乎有一个基于属性的版本。


显然现在你需要实现一个FlywayConfigurationCustomizer(未经测试):


@Configuration

public class FlywayConfiguration {

    @Bean

    public FlywayConfigurationCustomizer customizeLicense(

                 @Value("${my-app.flyway.license}") String license) {

        return new FlywayConfigurationCustomizer() {


            @Override

            public void customize(FluentConfiguration configuration) {

                configuration.licenseKey(license);

            }

        };

    }

}

我认为这可能可以简化为 lambda(也未经测试)......


@Configuration

public class FlywayConfiguration {

    @Bean

    public FlywayConfigurationCustomizer customizeLicense(

                 @Value("${my-app.flyway.license}") String license) {

        return configuration -> configuration.licenseKey(license);

    }

}


查看完整回答
反对 回复 2022-06-15
  • 1 回答
  • 0 关注
  • 141 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号