99 *
1010 * SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
1111 ******************************************************************************/
12- apply plugin : " biz.aQute.bnd.builder"
13-
1412def baseVersion = project. version
1513if (baseVersion. endsWith(' -SNAPSHOT' ))
1614 baseVersion = baseVersion. substring(0 , baseVersion. length() - 9 )
1715else if (baseVersion. split(' \\ .' ). length == 4 )
1816 baseVersion = baseVersion. substring(0 , baseVersion. lastIndexOf(' .' ))
1917def qualifiedVersion = baseVersion + ' .v' + buildTime
2018
21- jar. bundle. bnd (
22- ' Bundle-Version' : qualifiedVersion,
23- ' Bundle-Vendor' : ' Eclipse LSP4J' ,
24- ' Bundle-RequiredExecutionEnvironment' : " JavaSE-${ versions.java} " ,
25- " -exportcontents" : " org.eclipse.lsp4j.*" ,
26- " -savemanifest" : " build/tmp/bnd/MANIFEST.MF" ,
27- )
19+ tasks. named(' jar' ) {
20+ bundle {
21+ bnd(
22+ ' Bundle-Version' : qualifiedVersion,
23+ ' Bundle-Vendor' : ' Eclipse LSP4J' ,
24+ ' Bundle-RequiredExecutionEnvironment' : " JavaSE-${ versions.java} " ,
25+ " -exportcontents" : " org.eclipse.lsp4j.*" ,
26+ " -savemanifest" : " build/tmp/bnd/MANIFEST.MF" ,
27+ )
28+ }
29+ }
2830
2931// ------------------------------------------------------
3032// Generate a manifest for the source bundle
3133
3234def sourcesManifestFile = " $buildDir /tmp/sourcesJar/MANIFEST.MF"
3335
34- task genSourcesManifest {
36+ tasks . register( ' genSourcesManifest' ) {
3537 outputs. file(sourcesManifestFile)
38+ def projectName = project. name
39+ def projectTitle = project. hasProperty(' title' ) ? project. title : null
3640 doLast {
3741 def f = new File (sourcesManifestFile)
3842 f. parentFile. mkdirs()
3943 def writer = new PrintWriter (f)
4044 writer. println (" Manifest-Version: 1.0" )
4145 writer. println (" Bundle-ManifestVersion: 2" )
42- writer. println (" Bundle-SymbolicName: ${ project.name } .source" )
46+ writer. println (" Bundle-SymbolicName: ${ projectName } .source" )
4347 writer. println (" Bundle-Version: ${ qualifiedVersion} " )
44- if (project . hasProperty( ' title ' ) )
45- writer. println (" Bundle-Name: ${ project.title } Sources" )
48+ if (projectTitle )
49+ writer. println (" Bundle-Name: ${ projectTitle } Sources" )
4650 else
4751 writer. println (" Bundle-Name: Sources" )
4852 writer. println (" Bundle-Vendor: Eclipse LSP4J" )
49- writer. println (" Eclipse-SourceBundle: ${ project.name } ;version=\" ${ qualifiedVersion} \" " )
53+ writer. println (" Eclipse-SourceBundle: ${ projectName } ;version=\" ${ qualifiedVersion} \" " )
5054 writer. close()
5155 }
5256}
@@ -62,10 +66,12 @@ sourcesJar {
6266// ------------------------------------------------------
6367// Task to copy the generated manifest into the project
6468
65- task eclipseManifest ( type : Copy ) {
69+ tasks . register( ' eclipseManifest ' , Copy ) {
6670 dependsOn(jar)
6771 from " $buildDir /tmp/bnd/MANIFEST.MF"
6872 into ' META-INF'
6973}
7074
71- tasks[' eclipse' ]. dependsOn(eclipseManifest)
75+ tasks. named(' eclipse' ) {
76+ dependsOn(' eclipseManifest' )
77+ }
0 commit comments