Open main menu

CDOT Wiki β

Changes

Your First OSGi Bundle Using CLI

2,169 bytes added, 09:01, 28 January 2011
Created page with '== Your First OSGi Bundle Using CLI == This is an example of creating a Hello World OSGi bundle using CLI (Command Line Interface) on Fedora. You can find the original work at [h…'
== Your First OSGi Bundle Using CLI ==
This is an example of creating a Hello World OSGi bundle using CLI (Command Line Interface) on Fedora. You can find the original work at [http://underlap.blogspot.com/2007/01/creating-osgi-bundle.html].

* Open a terminal window and create this directory path.

mkdir -p org/foo/example

* Copy this file, with name Example.java, into the example directory

package org.foo.example;
import org.osgi.framework.BundleActivator;
import org.osgi.framework.BundleContext;
public class Example implements BundleActivator {
public void start(BundleContext bc) {
System.out.println("Hello world");
}
public void stop(BundleContext bc) {
System.out.println("Goodbye world");
}
}

* Compile the Java program with this command

javac -cp /usr/lib64/eclipse/plugins/org.eclipse.osgi_3.6.1.R36x_v20100806.jar org/foo/example/Example.java

* Copy this file, with name MANIFEST.MF, into your home directory

Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-SymbolicName: org.foo.example.Example
Bundle-Version: 1
Bundle-Activator: org.foo.example.Example
Import-Package: org.osgi.framework;version="1.3.0"

* Create a jar file of the manifest and java program with this command

jar -cvfm example.jar MANIFEST.MF org

* Now run the bundle using the Equinox console

java -jar /usr/lib64/eclipse/plugins/org.eclipse.osgi_3.6.1.R36x_v20100806.jar -console

* You should get the osgi> prompt and your session might look like this

osgi> ss
Framework is launched.
id State Bundle
0 ACTIVE org.eclipse.osgi_3.6.1.R36x_v20100806
osgi> install file:example.jar
Bundle id is 1
osgi> ss
Framework is launched.
id State Bundle
0 ACTIVE org.eclipse.osgi_3.6.1.R36x_v20100806
1 INSTALLED org.foo.example.Example_1.0.0
osgi> start 1
Hello world
osgi> stop 1
Goodbye world
osgi> close

* Congratulations! You've just run your first OSGi bundle using the command line on Fedora Linux.
63
edits