发布版本的Gradle war清单版本号错误

发布版本的Gradle war清单版本号错误,gradle,manifest,release,war,Gradle,Manifest,Release,War,我有一个gradle项目,它构建一个war文件,并包括一个清单: war { archiveName 'archive.war' manifest { attributes("Implementation-Title": project.name, "Implementation-Version": version, "Implementation-Timestamp": new Date()) } } 这很好,但是如果我运行一个发布版本(使用gradl

我有一个gradle项目,它构建一个war文件,并包括一个清单:

war {
    archiveName 'archive.war'
    manifest {
        attributes("Implementation-Title": project.name, "Implementation-Version": version, "Implementation-Timestamp": new Date())
    }
}
这很好,但是如果我运行一个发布版本(使用gradle发布插件)来更新项目版本,那么war文件将使用旧版本号而不是新版本号创建


我可能错了,但我怀疑这是因为清单代码是在配置阶段而不是执行阶段运行的。修复此问题的最佳方法是什么?

将清单部分包装在“doFirst”中修复了它。使用“doLast”会导致创建一个空的清单文件

工作代码:

war {
    doFirst {
        manifest {
            attributes("Implementation-Title": project.name, "Implementation-Version": version, "Implementation-Timestamp": new Date())
        }
    }
    archiveName 'infoserverws.war'
}

我会联系插件的作者。谢谢你的回答-我一直被困在jar文件中清单的相同问题上。