gpt4 book ai didi

java - 仅对特定的一组文件使用 LessCssProcessor

转载 作者:行者123 更新时间:2023-11-29 05:42:05 24 4
gpt4 key购买 nike

我正在尝试在我的 Maven 项目中实现 LessCssProcessor。但是,我尝试在其上使用处理器的项目有包含 CSS 错误的文件,导致无法生成 css 文件。是否可以配置处理器或项目,以便 Less 处理器或任何处理器只能在特定的一组文件上运行。感谢所有帮助!

最佳答案

仅在一组有限的资源上应用处理器的最简单方法是使用 ExtensionsAwareProcessorDecorator,示例:

ExtensionsAwareProcessorDecorator.decorate(new LessCssProcessor()).addExtension("less");

应该使用装饰处理器而不是 LessCssProcessor,它将只处理扩展较少的资源(例如:style.less),而忽略其他任何资源。

同样的事情可以使用配置约定来实现,例如:

preProcessors=lessCss.less

请注意,处理器的别名带有“.less”后缀,这意味着它将仅应用于具有较少扩展名的资源。

如果您需要更精细的东西,可以使用另一个装饰器,称为 PathPatternProcessorDecorator。使用示例:

String[] patterns = new String[] {"/a/**/n?me.css", "*.less", "/less/*.css"}
PathPatternProcessorDecorator.include(new LessCssProcessor(), patterns);

上面的示例创建了一个装饰处理器,仅当资源与提供的模式之一匹配时才应用该处理器。如果您需要排除模式,可以使用类似的方法:

String[] patterns = new String[] {"*.css", "/script/*.js"}
PathPatternProcessorDecorator.exclude(new LessCssProcessor(), patterns);

在这种情况下,如果资源匹配任何提供的模式,处理器将不会被应用。

如果现有的实现都不够好,您可以实现自己的处理器装饰器,以自定义方式应用或不应用处理。

关于java - 仅对特定的一组文件使用 LessCssProcessor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17098861/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com