重构 compileModule