- optimize logic of load plugins
- fix when provider==null