How to force a recompilation of all Sling scripts jsps, java, and sightly in AEM 6.4
Environment
AEM 6.4
Sometime the JSP classes will not get compiled automatically in Adobe Experience Manager(AEM). Strange UI issues can occur and compilation errors may be seen in the logs. In AEM6.4 libraries are no longer under /var/clientlibs folder, they are in the file system.
For classes and Slightly access [1] and click Recompile all JSPs.
For clientlibs access [2], click Invalidate Caches then click Rebuild Libraries.
Recompile via the file system
find launchpad/felix -path “/bundle/data/classes” -type d
Note: Classes and Slightly cache is stored in the Apache Sling Commons FileSystem ClassLoader bundle. You can also check the bundle number in the AEM Web Console and access that folder directly on the file system.
find launchpad/felix -path “/bundle/data/outputcache” -type d
Note: Clientlibs is now stored in the Adobe Granite UI Clientlibs. You can also check the bundle number in the AEM Web Console and access that folder directly on the file system.
[1] http://[host]:[port]/system/console/slingjsp
[2] http://[host]:[port]/libs/granite/ui/content/dumplibs.rebuild.html
DOWNLOAD
Shell script cq-force-recompilation64.sh to automate the recompile process on AEM 6.4 Example arguments: ./cq-force-recompilation64.sh crx-quickstart/ http://localhost:4502 admin:admin