繁体   English   中英

使用yuicompressor的错误

[英]Errors using yuicompressor

我试图运行yuicompressor时遇到一些错误。

它说:

[error] 1:2:illegal character
[error] 1:2:syntax error
[error] 1:3 illegal character

这可能是因为我将其保存为错误的编码或其他什么?

我已经看到了YUICompressor和使用字节顺序标记(BOM)以UTF-8保存的文件的问题。 Visual Studio 2008的默认设置似乎是以这种方式保存它们。 要解决它,我必须使用不同的编码保存文件。 在VS2008中,这是文件 - 高级保存选项 - 编码:Unicode(没有签名的UTF-8)

我今天遇到了这个问题。 另一个解决方法是在命令行上提供--charset utf-8选项。

除了在“没有签名编码的UTF-8”下保存,我不得不切换到Windows样式行结尾(CR LF)。

在Visual Studio 2008中查看.js文件时...文件 - >高级保存选项 - > Unicode(不带签名的UTF-8)。

使用.NET版YuiCompressor进行编码时遇到了同样的问题。

修复了我在配置文件中添加EncodingType="UTF8"问题:

<CssCompressorTask        EncodingType="UTF8" SourceFiles="@(CssFiles)"        OutputFile="path\styles.min.css" />
<JavaScriptCompressorTask EncodingType="UTF8" SourceFiles="@(JavaScriptFiles)" OutputFile="path\scripts.min.js" />

有关更多编码选项,请参阅文档

为了防止任何人使用Powershell连接文件,我使用以下Powershell脚本来规避这个问题:

Get-Content `
JavaScript/file01.js,`
JavaScript/file02.js,`
JavaScript/file03.js `
 | Set-Content JavaScript/Concat.js -Encoding Ascii

java.exe -jar ../../yuicompressor/build/yuicompressor-2.4.2.jar JavaScript/Concat.js -o JavaScript/Concat.min.js preserve-semi --charset ascii --type js

注意连接和YUICompressor调用上的ascii编码参数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM