我有一个名为floodlight.jar的jar文件。我可以在cmd行中运行它:java -jar floodlight.jar。现在我想将它转换为一个捆绑包,以便与FUSE ESB容器一起部署。这是我到目前为止所做的:
转换:
java -jar bnd.jar wrap floodlight.jar
生成名为floodlight.bar的包。将名称更改为floodlight.jar
部署
FuseESB:karaf@root> osgi:install -s file:/home/usr/Dir/to/floodlight.jar
我希望捆绑包能像我在cmd行中所做的那样:java -jar floodlight.jar一旦开始。但是,它没有做任何事情就是活跃的。它就像一个图书馆。
我想知道如何让bundle在启动后运行主类。有人可以帮帮我吗?
答案 0 :(得分:1)
OSGi应用程序的入口点是BundleActivator。您无法像标准Java应用程序那样调用main方法。但是,您可以在bundle的start(BundleContext)方法中执行main方法中的所有操作。
因此,实现BundleActivator接口并将其添加到清单中。