在开发期间使用非缩小的CSS与生产Maven构建

时间:2013-02-22 10:25:04

标签: css stylesheet minify

我在pom.xml中使用samaxes插件实现解决方案没有问题,可以缩小并生成我所需的example.min.css文件,是否有脚本,如何在运行时保持开发环境利用CSS文件没有大大改变CSS源文件?

我的xhtml doc中有以下代码:

    .
    .
    <link type="text/css" rel="stylesheet"
          href="/assets/css/forms.css"/>
    <link type="text/css" rel="stylesheet"
      href="/assets/css/content.css"/>
    <link type="text/css" rel="stylesheet"
          href="/assets/css/images.css"/>
    .
    .

我的pom创建了一个example.min.css,并使用samaxes将其保存在同一位置。我想在我的页面中使用它,但只在生产中使用...我希望能够在这些不同的文件上随时跟上开发但是当我执行maven编译时,它会生成example.min.css文件这个和我打算在生产中使用它。有很多很好的答案说明哪些插件用于优化和缩小我的css和js,我只需要知道是否有最好的练习指向它们而不引入另一个插件如wr04J或者是否有一些js我可以如果我使用param或其他东西,可以动态构建条件样式表语句的工具吗?

最初我使用的是将呈现属性应用于ui:fragment标记的概念,该标记将以某种方式呈现,具体取决于检查Maven调试属性是否存在的bean属性,但这会产生过多的开销和只是为了让它发挥作用,这似乎是一个糟糕的黑客。我需要一个更好,更简单的想法。

1 个答案:

答案 0 :(得分:1)

使用当前版本的Minify Maven Plugin,您必须执行以下操作:

if productionEnvironment
  <script src="js/bundle.min.js"/>
else
  <script src="js/bundle.js"/>
end

调试仍然很容易,你只需要定义一次源文件(在pom中) 但是,这将在插件的未来版本中修复。 Source Maps可能很快就会成为现实,我计划很快加入对它的支持。