mirror of
https://github.com/jlengrand/picocli.git
synced 2026-03-10 00:31:17 +00:00
[#734] Make the picocli jar OSGi friendly
* added the bnd plugin to the build * defined a bnd.bnd file to handle the package export (fixes #734)
This commit is contained in:
committed by
Remko Popma
parent
4e52ec5f10
commit
f7be991277
3
bnd.bnd
Normal file
3
bnd.bnd
Normal file
@@ -0,0 +1,3 @@
|
||||
Import-Package: !org.fusesource.jansi, *
|
||||
Export-Package: picocli
|
||||
-fixupmessages "^Classes found in the wrong directory: \\{META-INF/versions/9/module-info\\.class=module-info}$"
|
||||
27
build.gradle
27
build.gradle
@@ -1,5 +1,7 @@
|
||||
import java.nio.file.Files
|
||||
import java.nio.file.Paths
|
||||
import aQute.bnd.gradle.Bundle
|
||||
import aQute.bnd.gradle.Baseline
|
||||
|
||||
group 'info.picocli'
|
||||
description 'Java command line parser with both an annotations API and a programmatic API. Usage help with ANSI styles and colors. Autocomplete. Nested subcommands. Easily included as source to avoid adding a dependency.'
|
||||
@@ -12,6 +14,7 @@ buildscript {
|
||||
maven {
|
||||
url "https://plugins.gradle.org/m2/"
|
||||
}
|
||||
mavenCentral()
|
||||
}
|
||||
|
||||
dependencies {
|
||||
@@ -19,6 +22,7 @@ buildscript {
|
||||
classpath 'org.asciidoctor:asciidoctorj-pdf:1.5.0-alpha.15'
|
||||
classpath "com.jfrog.bintray.gradle:gradle-bintray-plugin:$gradleBintrayPluginVersion"
|
||||
classpath "gradle.plugin.org.beryx:badass-jar:1.1.3"
|
||||
classpath 'biz.aQute.bnd:biz.aQute.bnd.gradle:4.2.0'
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,6 +31,7 @@ apply plugin: 'distribution'
|
||||
apply plugin: 'maven-publish'
|
||||
apply plugin: 'com.jfrog.bintray'
|
||||
apply plugin: "org.beryx.jar"
|
||||
apply plugin: 'biz.aQute.bnd.builder'
|
||||
|
||||
|
||||
allprojects {
|
||||
@@ -358,6 +363,28 @@ publishing {
|
||||
}
|
||||
}
|
||||
}
|
||||
apply plugin: 'java'
|
||||
|
||||
configurations {
|
||||
bundleCompile
|
||||
baseline
|
||||
}
|
||||
dependencies {
|
||||
baseline('group': group, 'name': jar.baseName, 'version': "(,${jar.version}[") {
|
||||
force = true
|
||||
transitive = false
|
||||
}
|
||||
}
|
||||
|
||||
sourceSets {
|
||||
bundle
|
||||
}
|
||||
task bundle(type: Bundle) {
|
||||
from sourceSets.bundle.output
|
||||
bndfile = 'bnd.bnd'
|
||||
sourceSet = sourceSets.bundle
|
||||
}
|
||||
|
||||
/*
|
||||
Release procedure:
|
||||
1. edit version numbers: remove -SNAPSHOT classifier
|
||||
|
||||
Reference in New Issue
Block a user