Java 如何重命名gradle workspace插件生成的捆绑包
好的,我想重命名由我的构建生成的bundle,以指定其名称中的版本,但是我所做的一切似乎都被忽略了,每次bundle都以projects文件夹名结束 build.gradle文件Java 如何重命名gradle workspace插件生成的捆绑包,java,gradle,jar,osgi,bnd,Java,Gradle,Jar,Osgi,Bnd,好的,我想重命名由我的构建生成的bundle,以指定其名称中的版本,但是我所做的一切似乎都被忽略了,每次bundle都以projects文件夹名结束 build.gradle文件 apply plugin: 'java' repositories { mavenCentral() } dependencies { // https://mvnrepository.com/artifact/org.osgi/org.osgi.core compile group: 'o
apply plugin: 'java'
repositories {
mavenCentral()
}
dependencies {
// https://mvnrepository.com/artifact/org.osgi/org.osgi.core
compile group: 'org.osgi', name: 'org.osgi.core', version: '6.0.0'
}
task copyJar(type: Copy) {
from('generated')
include('*.jar')
into("$rootDir/build/lib/bundles")
}
build.finalizedBy(copyJar)
格拉德尔酒店
bundle_name=helloworld
bundle_version=5.1.2
据我所知,jar任务使用baseName和version属性,以及其他属性来命名jar(如果未指定任何内容),因此我尝试在build.gradle文件中命名,但不起作用,我一直得到一个带有项目文件夹名称的jar文件
jar.baseName = "$bundle_name"
jar.version = "$bundle_version"
我也在使用bnd工作区插件,我认为它覆盖了jar任务的工作方式,但我不确定
这是父项目build.gradle
//Applying the Gradle BND Plugin for Workspace Builds
//https://github.com/bndtools/bnd/blob/master/biz.aQute.bnd.gradle/README.md
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath "biz.aQute.bnd:biz.aQute.bnd.gradle:${bnd_version}"
}
}
apply plugin: 'biz.aQute.bnd.workspace'
apply plugin: 'java'
// Repositorios, aguante Maven Central.
/*
repositories {
mavenCentral()
}
*/
clean {
delete ("$rootDir/build/libs/bundles")
}
感谢您阅读如果您使用的是Bnd工作区插件,那么您必须通过项目的Bnd.Bnd文件来控制Bnd。请参阅-outputmask指令以控制输出名称 就像一个符咒,现在我明白了。非常感谢先生,我可以问一个后续问题吗?现在它可以工作了,我得到了具有所需名称的jar文件,但是gradle现在生成了两个jar文件,一个是我在bnd.bnd文件中设置的名称,另一个是previus通用名称,我在哪里可以禁用稍后jar文件的创建?