从OSGi那里得到很多帮助，但不是说起源于OSGi！