不包括缩小一些js文件中com.day.cq.widget.impl.HtmlLibraryManagerImpl
我有配置\ com.day.cq.widget.impl.HtmlLibraryManagerImpl.xml不包括缩小一些js文件中com.day.cq.widget.impl.HtmlLibraryManagerImpl
一个OSGi的配置设置如下:
<?xml version="1.0" encoding="UTF-8"?>
<jcr:root xmlns:sling="http://sling.apache.org/jcr/sling/1.0" xmlns:jcr="http://www.jcp.org/jcr/1.0"
jcr:primaryType="sling:OsgiConfig"
htmllibmanager.minify="{Boolean}true"
htmllibmanager.debug="{Boolean}false"
htmllibmanager.gzip="{Boolean}false"
htmllibmanager.timing="{Boolean}false"
/>
但是,我想要一些文件不被缩小。我怎样才能做到这一点 ?
由于AEM 6.1的com.day.cq.widget.HtmlLibraryManager接口及其实现(com.day.cq.widget.impl.HtmlLibraryManagerImpl)已被弃用。
相反,你应该看看新的HtmlLibraryManager接口。 com.adobe.granite.ui.clientlibs.impl.HtmlLibraryManagerImpl实现具有有趣的OSGi属性“htmllibmanager.excluded.path.list”,这可能正是您所需要的。
我曾读过 Sham HC
给据他解决在Adobe论坛这个问题,OOB不可能&你可能需要实现自己的HTMLLibraryManager。提供文件日托请求功能包。
如果你看了下面的链接,你可以利用选择器和调度员或linkrewriter删除.min你的请求。
使用手册包括能够选择是否精缩与否。在你的clientLibs中没有什么可以改变的。使用“htmllibmanager.excluded.path.list”不适用于我,我可以在文档中阅读cq:ClientLibraryFolder
无法排除,因为很难指定它是clientLib。
为了让这样的事情(CSS):
<sly data-sly-use.clientLib="/libs/granite/sightly/templates/clientlib.html" data-sly-call="${clientLib.css @ categories='yourClientLib}" data-sly-unwrap/>
用途:
<link rel="stylesheet" type="text/css" href="/etc/designs/yourClientLib.css"/>
而且使这个(JS):
<sly data-sly-use.clientLib="/libs/granite/sightly/templates/clientlib.html" data-sly-call="${clientLib.js @ categories='yourClientLib'}" data-sly-unwrap/>
用途:
<script src="/etc/designs/yourClientLib.js"></script>
所以如果你不想缩小你的文件将以“.js”结尾,如果你想缩小你的文件将以“.min.js”结尾。真是太容易了。
你的用例是什么?你为什么不希望他们缩小?无论如何,我只能想到用一个单独的脚本标记直接引用特定文件,而不是使用库管理器 – Thomas
在执行过程中要压缩的文件需要缩小。但是,由此导致了问题。 – Ajay
然后我宁愿检查这个文件,因为它可能会错过一些;在一行或其他小东西的末尾,标识出写得不太好的js文件 – Thomas