【问题标题】:Js files under clientlibs are not getting loadedclientlibs下的js文件没有被加载
【发布时间】:2012-09-05 12:21:14
【问题描述】:

clientlibs 下的 js 文件没有被加载,当我尝试访问这些文件时 clientlibs.js 使用 url //localhost:5555/etc/designs/MyProject/clientlibs.js(我在此 url 中删除了 http,因为那样它将被视为链接),
我收到 404 错误。

但是,如果我在 felix 控制台的 HTML 配置中禁用了 minify 选项,那么这些 js 文件就会被加载。实际上 minify 选项用于压缩 CSS 和 JS 文件,也用于删除空白字符。我不确定为什么启用该选项后我的 JS 文件没有被加载。但在生产中,我们应该启用该选项。

我可以知道我们如何加载这些 JS 文件。

谢谢。

【问题讨论】:

  • 你检查过缩小的脚本放在哪里了吗?
  • 感谢您的回复 Michal,我不确定压缩文件放在哪里,如果 js 文件中有任何语法错误,我认为会是什么样子,因为哪个 js 被压缩器捕获文件没有被加载。当我知道这些缩小的文件放在哪里时,我会告诉你的,谢谢 Michal
  • 嗨,Michal,实际上压缩器捕获的 js 文件中有一个错误,我在尝试使用在线可用的 YUI 压缩器压缩 js 文件时发现了该错误。现在我包含了 js直接文件而不是使用 clientlibs,这样我现在对 minifier 没有任何问题。

标签: java javascript jquery aem


【解决方案1】:

这里,启用minify选项就是压缩js文件。启用此选项后,如果突然找不到您的js文件(尝试访问这些js文件时出现404错误),那么确定这些js文件压缩后抛出一些错误。要确认这一点,请将您的每个 js 文件内容复制并粘贴到在线提供的 YUI 压缩器 中,并尝试使用该压缩器对其进行压缩,如果它抛出错误,则证明有一些js文件中的错误,您需要修复它。希望它有所帮助。

【讨论】:

    【解决方案2】:

    Adobe 的文档警告在进行配置更改后删除 clientlibs 的内容: 更改 Minify 或 Gzip 的设置时,您将 还需要删除/var/clientlibs的内容。 这是客户端库的缓存版本,将被重建 下次请求时。

    在此处查看文档:http://dev.day.com/docs/en/cq/current/deploying/configuring_osgi.html

    【讨论】:

      【解决方案3】:

      您的 JS 缩小器可能会将缩小后的文件放到不同的位置。

      【讨论】:

        【解决方案4】:

        您还可以查看 cq 日志 (error.log)。包含在最终 clientlibs.js 中的 js 库之一可能有问题

        【讨论】:

          猜你喜欢
          • 2015-05-30
          • 1970-01-01
          • 1970-01-01
          • 2018-09-29
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-02-11
          • 2013-02-28
          相关资源
          最近更新 更多