1

我在使用CakePHP 2.X 的 Asset Compress Plugin压缩我的 Javascript 文件时遇到了麻烦。我目前在 IIS 7 上使用 CakePHP 2.2.2。

它尝试添加压缩js文件,但它不存在:

<script type="text/javascript" src="/cakephp/cache_js/jquery-combined.v1379067166.js">
  • 我已经下载并放置了插件app/Plugin/AssetCompress/
  • 我已经下载了YUI 构建工具并将包含的文件lib/yuicompressor/yuicompressor-2.4.2放在vendors/yuicompressor/
  • 我已使文件夹webroot/cache_js/可写。

这是我的asset_compress.ini

[General]
cacheConfig = false

[js]
timestamp = true
path = WEBROOT/js/*
cachePath = WEBROOT/cache_js/
filters[] = YuiJs

[jquery-combined.js]
files[] = jquery.tipsy.js
files[] = web.js

我正在像这样在引导程序中添加插件,debug模式设置为0

Configure::write('Dispatcher.filters', array(
    'AssetDispatcher',
    'CacheDispatcher'
));

CakePlugin::load('AssetCompress', array('bootstrap' => true));

另外,我正在从以下位置加载它AppController

var $helpers = array('AssetCompress.AssetCompress');

layout以这种方式在模板上使用它:

echo $this->AssetCompress->script('jquery-combined');

我遇到的唯一错误error.log是以下错误:

2013-09-13 14:16:10 错误:[MissingControllerException] 找不到控制器类 CacheJsController。C:\inetpub\wwwroot\cakephp\app\webroot\index.php(92): Dispatcher-> dispatch(Object(CakeRequest), Object(CakeResponse)) C:\inetpub\wwwroot\cakephp\index.php(42) : 要求('C:\inetpub\wwwr...') {main}

关于会发生什么的任何线索?我应该安装 Java SDK 吗?我.jar从 YUI 中选择了错误的文件吗?

谢谢。

4

1 回答 1

1

在设置 debug = 0 之前,您需要使用 CLI 工具构建资产的静态版本。我很确定这在文档中。

于 2013-09-13T23:20:28.607 回答