1
回答
Gradle4.7编译Spring Boot Stater时,不产出META-INF/spring-configuration-metadata.json
【腾讯云】学生服务器套餐10元/月 >>>   

之前使用的是Gradle 4.4.1, 一切正常, 今天升级到了4.7, 结果自己编写的starter, 打包发布之后, 发现缺少META-INF/spring-configuration-metadata.json文件,导致在开发依赖这些starter的项目中的application.yml的时候没有属性提示, 反而警告说属性找不到。

国内外的网站上都没有相关的说明, gradle的github issue列表中都没有相关的, 项目文件中build/classes/java/main/META-INF/spring-configuration-metadata.json缺少,导致打包缺少。

下面的都尝试过,觉得这样写不优雅很麻烦,但是也还是解决不了问题。

compileJava.dependsOn(processResources)

    compileJava {
        doLast {
            file('out/production/classes/META-INF/spring-configuration-metadata.json').renameTo(file('build/classes/java/main/META-INF/spring-configuration-metadata.json'))
        }
    }

编译过程中没有错误,没有警告。

目前回滚回了4.4.1版本,依赖这些starter的项目没有回滚,可以正确提示。

举报
aviator
发帖于1周前 1回/60阅
顶部