[英]Maven plugin for versioning and minifying javascript
我已经构建了一个复杂的ajax驱动的单页webapp,它使用一个服务于JSON的RESTful后端Web服务。 javascript被分成许多不同的文件,每个文件代表某种特征或组件。
虽然该服务已经进行了alpha测试,但我只是在没有缩小的情况下单独提供所有这些文件。 但是现在我想推出测试版,我真的需要组合文件,缩小它们并对它们进行版本化。 我想使用Maven将其添加到我的构建过程中。
我正在使用以下“类型”的javascript文件,其中#3和#4是我关注的问题:
我想在构建过程中执行以下操作:
app-2.0.6.min.js
,其中2.0.6是maven项目版本。 feature-abc-56ab32de29.min.js
,其中56ab32de29是该特定文件的版本号。 <script>
标记更新HTML文件以指向具有正确版本号的javascript文件。 是否有maven插件可以协助连接?
有没有maven插件可以帮助缩小? 理想情况下,我想使用Google Closure Compiler,但如果更简单,可以与其他人合作。
是否有maven插件可以帮助进行版本控制?
有没有办法让4型javascript文件具有独立的版本号? 理想情况下,如果文件在版本2.0.5和2.0.6之间没有变化,则用户无需下载新版本,并且其缓存版本可以正常工作。 我正在使用GIT进行源代码控制,那么有没有办法使用文件的GIT哈希码进行版本控制?
有没有一种解决方案可以压缩常规HTML文件中内联的javascript而不会破坏HTML?
是否有压缩和版本化我的CSS文件的解决方案?
看看yuicompressor-maven-plugin 。 它可以聚合各种js(以及css)文件以及缩小和混淆它们。
这是一个全新的Maven插件,针对这项任务: http : //mojo.codehaus.org/webminifier-maven-plugin/
我在Maven环境中成功地整合了RequireJS优化(使用Google Closure编译器+进行连接)(对于单页JS应用程序)。 有关详细信息,请参阅我的问题和后续答案: Maven项目中的RequireJS编译与外部JS依赖项
您可以将其扩展到版本并归档缩小的JS工件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.