为 JettyServer 及 JettyServerForIDEA 增加 ResourceCollection 使 JFinal.start() 时支持多资源目录解决打war包时大型(GB级)静态资源,打包时间超长,war 包巨大,部署上传时间超长问题,使得war应用与资源文件分离,提升工作效率,简化开发阶复杂度;
调整如下:
class JettyServer implements IServer { ... private void doStart() { ... webApp.setContextPath(context); // 增加 ResourceCollection 支持绑定多个资源目录,webAppDir 以逗度分隔多个资源目录即可 ResourceCollection resources = new ResourceCollection(); resources.setResourcesAsCSV(webAppDir); webApp.setBaseResource(resources); // webApp.setWar(webAppDir); ... } }
使用示例:
// 静态资源目录使用绝对路径,这样在开发阶段即可访问外部静态资源,使得不需要使用nginx之类代理服务实现静态资源分离,提升开发效率 JFinal.start("src/main/webapp,/other/large/static-resource1,/other/large/static-resource2", 8080, "/");
假设资源目录如下:
src/main/webapp/index.html /other/large/static-resource1/static/index2.html /other/large/static-resource1/static/index3.html
JFinal.start后,访问如下:
http://localhost:8080/index.html http://localhost:8080/static/index1.html http://localhost:8080/static/index2.html
感谢你的支持