分离loader和库的实现