Alterar o mecanismo de minificação para bibliotecas do cliente no AEM
Este artigo aborda a questão do Adobe Experience Manager em que você deseja usar uma biblioteca de minificação diferente para bibliotecas de cliente AEM diferentes da biblioteca padrão Compactador YUI. Você pode usar o Google Closure Compiler (GCC); consulte os nós da biblioteca do cliente que usam o GCC para JS abaixo.
Descrição description
Ambiente
Adobe Experience Manager 6.4, 6.5
Problema/Sintomas
Como usar uma biblioteca de minificação diferente para bibliotecas de cliente AEM do que a biblioteca padrão do Compactador YUI?
Resolução resolution
No AEM, você pode trocar o mecanismo da interface do usuário pelo GCC (Google Closure Compiler https://github.com/google/closure-compiler-js).
Por exemplo, consulte estes nós da biblioteca do cliente que usam GCC para JS:
/libs/granite/contexthub/dependencies/coralui
/etc/clientlibs/granite/coralui3
/etc/clientlibs/granite/coralui2
/libs/dam/gui/coral/components/admin/adhocassetshare/clientlibs/adhocassetshare
/libs/dam/gui/components/admin/adhocassetshare/clientlibs/shareembedded
/etc/clientlibs/screens/player/shared
/etc/clientlibs/screens/player/firmware
/libs/dam/gui/components/admin/adhocassetshare/clientlibs/shareembeddedpreview
/apps/geometrixx-instore/clientlibs
Observação: se você quiser implementar seu próprio processador de script personalizado, implemente esta interface Java:com.adobe.granite.ui.clientlibs.script.ScriptProcessor
JAVADOC RELACIONADO:
Isso permite que você defina ScriptProcessors
que pode modificar fontes de script:
- os processadores são configuráveis com opções
- o processador pode ser usado para minificação, mas também para casos não minificados
CONFIGURAÇÃO:
- As
ScriptProcessors
opções padrão podem ser definidas por meio da configuração OSGi do Gerenciador de Bibliotecas de HTML (na interface do usuário do/system/console/configMgr
).
AS OPÇÕES PARA GCC SÃO:
failOnWarning
(o padrão é false)languageIn
(o padrão é ECMASCRIPT5)languageOut
(o padrão é ECMASCRIPT5)compilationLevel
(o padrão é simples) (pode ser espaço em branco, simples, avançado)