OSGi framework of Apache Felix Equinox
The concept of OSGi bundle is the difference between the PlugIn of the Eclipse of Maven's module ....
OSGi and Maven
Maven also features a modular system, but it is a compile-time tool, not a runtime framework. MAVEN is not a competitor to OSGi, but a complement to OSGi.
by specifying the name and version number of the dependent jar package in Pom.xml, maven can automatically download the correct jar file at compile time and deploy it to classpath.
However, MAVEN does not address the pitfalls of jar files:
also use the global classpath;
Also can not do the package level of information hiding;
And the Pom.xml format is not compatible with the OSGi format. Therefore, if you compile the OSGi system with MAVEN, you typically need to define two times metadata:
Define MAVEN's metadata in Pom.xml
Defining the metadata of OSGi in MANIFEST.MF
OSGi and Eclipse PlugIn
The Eclipse platform is based on Equinox, and Equinox is one of the implementations of OSGi.
And before the Eclipse3.0, it used a different module system; Eclipse Plugin refers to a folder that contains Plugin.xml, and the manifest.mf of metadata and OSGi defined in Plugin.xml are very similar: plugin name, vendor, version, export package, required Plugin
The key difference is that the dependency defined by Eclipse plugin is not the package level, but the entire plugin.
The biggest flaw with Eclipse plugin is that it cannot be moved to install, update, or uninstall.
From: http://www.myexception.cn/operating-system/1405867.html
The difference between OSGi and maven, Eclipse plugin