我想知道是否有任何“最佳实践”可以将“现代 JavaScript 构建工作流程”集成到生成 WAR 工件的 Maven 构建中。
我发现了几个处理串联和缩小的 Maven 插件:
- WRO4J: https://code.google.com/p/wro4j/wiki/MavenPlugin https://code.google.com/p/wro4j/wiki/MavenPlugin
- 缩小 Maven 插件:https://github.com/samaxes/minify-maven-plugin https://github.com/samaxes/minify-maven-plugin
- YUI: http://alchim.sourceforge.net/yuicompressor-maven-plugin/ http://alchim.sourceforge.net/yuicompressor-maven-plugin/
然而,我仍然不知道它们如何融入完整的构建工作流程,因为我认为必须能够打开和关闭连接/缩小:
对于开发,我想构建一个不包含串联/缩小资源的 WAR,以便我可以方便地进行调试。对于生产构建,我想生成一个包含串联/缩小资源的 WAR。
此外,对于生产构建,我必须“重写”html 中的脚本 URL,以指向脚本的串联/缩小版本。
在 JavaScript 世界中,我将使用 Grunt 与不同的 grunt 任务(uglify、usemin)来实现上述工作流程。如何在 Maven 构建中实现相同的目标?
既然您提到了 Grunt,您是否考虑过直接从 Maven 构建中调用 Grunt 任务?这不是一个完美的解决方案,但它为您提供了更多选择,而无需依赖 Maven 插件。http://addyosmani.com/blog/making-maven-grunt/ http://addyosmani.com/blog/making-maven-grunt/
另外,这个SO主题:Javascript Web 应用程序和 Java 服务器,全部在 Maven 中构建还是使用 Grunt 作为 Web 应用程序? https://stackoverflow.com/q/15406977/1024571
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)