Arquivos javascript antigos estão sendo compilados no diretório var/clientlibs

StackOverflow https://stackoverflow.com//questions/25015501

  •  21-12-2019
  •  | 
  •  

Pergunta

Atualizei recentemente alguns arquivos javascript em uma instância CQ5.6.Excluí a pasta vars/clientlibs para que o CQ regenerasse os arquivos apropriados no carregamento da próxima página.Quando os regenerou, ainda incluiu o javascript original.Verifiquei novamente e as instâncias de autoria e publicação tinham o novo javascript, então não sei onde ele está segurando o material antigo.

Então, onde o CQ armazena em cache os arquivos dos quais ele gera seus arquivos var?

Nenhuma solução correta

Outras dicas

Clientlibs CQs são armazenados em cache pelo HtmlLibraryManager.Use jad, JDecompiler para ver sua implementação.

Uma solução alternativa que encontrei é renomear o nó do clientlib.Portanto, se for myClientLib, basta renomeá-lo para myClientLib_somethingelse, então ele usará o novo js (ele limpa o cache do HtmlLibraryManager para o clientlib).Depois disso, você pode renomeá-lo novamente.

Atualizar:

Esqueci de mencionar uma url onde você pode reconstruir as clientlibs e aqui você também pode invalidar o cache: /libs/granite/ui/content/dumplibs.rebuild.html.Às vezes falha, mas talvez funcione.:D

Também é uma URL útil para verificar clientlibs: /libs/granite/ui/content/dumplibs.html

Após excluir o cache / var / clientlibs, você também pode tentar reiniciar o pacote Adobe Granite UI Commons (com.day.cq.cq-widgets) da visualização /system/console/bundles.

Esse pacote fornece o serviço com.day.cq.widget.impl.HtmlLibraryManagerImpl, que é responsável por compilar os clientlibs e também pode manter algum cache no memória também.

Em um ponto, isso foi definitivamente verdade para o compilador JSP, onde remover a pasta / var / classes / org / apache / jsp não foi suficiente para forçar um recompile sem também reiniciar o pacote de suporte de scripts JSP.

Este é um problema genérico, e será pior quando CSS / JS foi armazenado em cache no navegador do cliente.Eu recomendaria usar o ACS Commons, o recurso Versioned ClientLibs em seu site para adicionar o número da versão em arquivos CSS / JS.Por favor, consulte: http:// adobe-consulting-serviços.github.io/acs-aem-commons/features/versioned-clientlibs.html

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top