Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
This branch is up to date with nikhilbghodke/Insilico-BuildSystem:master.

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Insilico Build Gradle Plugin Build Status

This a Gradle Plugin which aims to let user create Osgi Bundes, Eclipse features, Eclipse Plugins and configure Osgi Application. The aims to ease out the process of creating and launching Osgi application. The project is still in development phase.

User Documentation


Using Leagcy Plugin Application

buildscript {
  repositories {
    maven {
      url ""
  dependencies {
    classpath ""

apply plugin: "com.github.niikhilghodke"

Using Plugins DSL

plugins {
  id "com.github.niikhilghodke" version "1.0.1"

How to create Osgi bundle

A Custom Task named OsgiBundle can be used to build OSGi bundles. This Custom Task extends Bundle Task defined in Bnd Gradle Plugin, so users are free to use all the properties used inside Bundle Custom Task Defined by Bnd Gradle Plugin. Documentation of which can be found here. The Osgi Bundle Task defines few extra properties inside it to declare Manifest headers. The Advantage of declaring this property is that user will no longer have to remember OSGi constants for wrting Manifest Headers and Gradle will give you immediate feedback when user mis spells any header, which was not the case with Bundle Task. Here is an example of how to configure the Custom Task

task bundle(type:OsgiBundle){
    from sourceSets.main.output

    bundleName ="somevalue"
    symbolicName= ""
    developer= "Roman"
    license= "MIT"
    vendor= "draegerLab"
    version = "1.1.0"
    contactAddress= "21b Bakers Street"
    activator= "com.Insilico.Activator"

bundleName property of Task is used to set Bundle-Name Header of Manifest. symbolicName property of Task is used to set Bundle-SymbolicName Header of Manifest. and so on each other property in above above example

Developer Documentation

How to clone this Repository

Open Git Bash and type the following command

$ git clone

How to build the project

Gradle plugin is nothing but a code Written in JVM Language, so the process is similar to building any JVM project using Gradle.

  1. Clone the Project.
  2. Open Command Prompt inside the directory where the project has benn cloned.
  3. Type the following Command
./gradlew build

If this doesn't work, you may need to change the permissions for the gradle file before you can run it: chmod +x gradlew.


Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.




The project aims to create a Gradle Plugin that eases a lot of process in creating and Launching Osgi Application







No releases published


No packages published


  • Groovy 89.8%
  • Java 10.2%