我正在尝试运行资产:在Symfony2项目中的Windows上转储。 我已下载 yuicompressor-2.4.8.jar 并将其放入 app / Resources / java / 文件夹。
接下来,我在我的树枝模板中创建了{%stylesheets%}块,如下例所示:
{% stylesheets
'bundles/arsen/css/style.css'
filter='cssrewrite, yui_css'
output='assets/css/complied.css'
%}
<link rel="stylesheet" type="text/css" href="{{ asset_url }}">
{% endstylesheets %}
这是我的 app / config / config.yml :
assetic:
debug: "%kernel.debug%"
use_controller: false
bundles: [ MyBundle ]
java: C:\Program Files (x86)\Java\jre1.8.0_73\bin\java.exe
filters:
cssrewrite: ~
yui_css:
jar: "%kernel.root_dir%/Resources/java/yuicompressor-2.4.8.jar"
当我运行 app / console assetic:dump 时,我收到此错误:
[Assetic\Exception\FilterException]
An error occurred while running:
"C:\Program Files (x86)\Java\jre1.8.0_73\bin\java.exe" "-jar" "C:\xampp\htdocs\Symfony27\app/Resources/java/yuicompressor-2.4.8.jar" "--charset" "UTF-8" "-o" "C:\Users\SYMFONY\AppData\Local\Temp\assD12A.tmp" "--type" "css" "C:\Users\SYMFONY\AppData\Local\Temp\assD129.tmp"
Error Output:
java.io.FileNotFoundException: UsersSYMFONYAppDataLocalTempassD12A.tmp:\Users\SYMFONY\AppData\Local\Temp\assD129.tmp (The filename, directory name, or volume label syntax is incorrect)
at java.io.FileOutputStream.open0(Native Method)
at java.io.FileOutputStream.open(Unknown Source)
at java.io.FileOutputStream.<init>(Unknown Source)
at java.io.FileOutputStream.<init>(Unknown Source)
at com.yahoo.platform.yui.compressor.YUICompressor.main(YUICompressor.java:208)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.yahoo.platform.yui.compressor.Bootstrap.main(Bootstrap.java:21)
这可能是由于 java版“1.8.0_73”和java版“1.8.0_73”文件的某些不兼容性引起的吗?
答案 0 :(得分:0)
它似乎是java路径。尝试这样的事情并调整你的路径:
assetic:
java: "C://Program Files//Java//jre1.8.0_31//bin//java.exe"