【问题标题】:How to have lesscss-resources plugin process less file in own plugin?如何让lesscss-resources插件在自己的插件中处理更少的文件?
【发布时间】:2013-11-28 23:02:07
【问题描述】:

我正在使用 Grails 2.1.0 和 lesscss-resources 1.3.0.3

我创建了一个插件,其中包含一个 less 和几个 css 文件,安装了 lesscss-resources 插件 + 明确的插件依赖项。 另一个 Grails 项目安装了我的自定义插件和相同的 lesscss-resources 插件。

单独运行插件时,所有css文件和less文件正确合并为一个css文件。

当运行另一个 Grails 项目时,只有 css 文件被合并 - 但 less 文件被链接为 less 文件,如下所示: <link href="/myproject/css/mystyle.less" type="text/css" rel="stylesheet/less" media="screen, projection" />。 但是,项目内较少的资源可以很好地合并。

插件少的资源不也应该合并吧?如果没有,是否有解决方法?对于如何解决这个问题的任何想法,我都会很高兴 - 我不知道在哪里寻找问题的根本原因......非常感谢。

顺便说一句,我不是在谈论这里描述的问题:https://github.com/paulfairless/grails-lesscss-resources/issues/25。我已经偶然发现了这个并添加了 dummy.css,它对我来说很好用。

插件和项目中安装的相关插件:

  • 运行时“:cache-headers:1.1.5”
  • 运行时“:cached-resources:1.0”
  • 运行时“:lesscss-resources:1.3.0.3”
  • 运行时“:resources:1.1.6”
  • 运行时“:zipped-resources:1.0”

编辑: 仅供参考:与此同时,我做了更多的测试,并用最少的代码重现了这个问题。由于这似乎非常特定于 lesscss-resources 插件,因此我在 https://github.com/paulfairless/grails-lesscss-resources/issues/36

提出了一个问题

我会用那里可能弹出的任何信息来更新这个问题。如果有人有想法,我仍然很乐意听到,我在这里上传了最少代码量的项目和插件: http://www.2shared.com/file/4OM-RVC6/lesstest.html


编辑 2: 我还没有收到回复,但至少找到了适用于我的用例的解决方法。 不幸的是,它涉及更改 lesscss-plugin 的代码。在https://github.com/paulfairless/grails-lesscss-resources/issues/36#issuecomment-8721813查看我的评论

【问题讨论】:

    标签: grails less grails-plugin


    【解决方案1】:

    由于仍然没有关于上述问题的反馈,我现在添加我的解决方法作为答案。

    我通过将 resourceMappers.LesscssResourceMapper 复制到我的插件项目(即覆盖 lesscss-resources 插件的默认行为)并将第 24 行更改为说来让它工作

    File input = originalFile
    

    而不是

    File input = getOriginalFileSystemFile(resource.sourceUrl);
    

    这样,对我来说一切正常。据我所知,这种变化不会产生任何副作用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-01-20
      • 1970-01-01
      • 2014-10-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多