Gradle 渐变版本替换字符

Gradle 渐变版本替换字符,gradle,versioning,rpm,Gradle,Versioning,Rpm,我使用的是nebula release插件,它可以为快照构建生成快照,也可以使用nebula ospackage插件构建RPM,我也尝试使用与RPM项目相同的版本,但RPM抱怨-作为非法字符,有没有办法让此修复保持相同的命名,我知道rpm命名标准不允许这样做 我可以在build.gradle project.version.toString()中执行类似的操作吗?替换(““,”)如果project.version是nebula release插件存储生成的版本字符串的位置,那么您应该能够使用:

我使用的是nebula release插件,它可以为快照构建生成快照,也可以使用nebula ospackage插件构建RPM,我也尝试使用与RPM项目相同的版本,但RPM抱怨-作为非法字符,有没有办法让此修复保持相同的命名,我知道rpm命名标准不允许这样做


我可以在build.gradle project.version.toString()中执行类似的操作吗?替换(““,”)

如果
project.version
nebula release
插件存储生成的版本字符串的位置,那么您应该能够使用:

project.version.replace('-','.')

toString()
不是必需的,但也应该包括在内。)

我解决了以下问题:

if (project.version.toString().contains("-")){
    version = project.version.toString().replaceAll("-", ".")
} else {
    version = project.version
}

你试过你的建议了吗?你有任何错误吗?nebula ospackage插件允许你设置软件包版本,你可以随意转换gradle项目版本,并将其用作你的ospackage版本。RaGe,我希望你一定已经阅读了我的全部评论,我也在使用nebula release插件,它本身使用-SNAPSHOT。。。这是关于将它与ospackage相结合,加上我不能使用相同的项目版本。。。因此,如果我发布快照,它必须是-快照,我想保持相同的命名法,我在构建RPM期间得到的错误,因为它将-视为非法字符。所以我在想,如果我能以某种方式取代我上面说的那个角色。是的,我试过project.version.toString().replace(““,”),它说找不到方法。你能发布你看到的确切错误消息吗?