标签: yui-compressor

使用YUIcompressor缩小JavaScript时跳过许可证/信用评论

当YUICompressor缩小JavaScript时,有没有办法保留许可/信用评论?有没有特别的评论字符?或者YUICompressor中的任何标志?

谢谢,格雷斯

javascript comments minify yui-compressor

8
推荐指数
1
解决办法
1862
查看次数

给定较长路径的Maven yui压缩器插件无法创建聚合?

我正在尝试创建两个css聚合 - 一个用于公共站点,另一个用于站点的应用程序部分.

如果我输出文件${project.build.directory}/${project.build.finalName}/css/public-all.css,一切正常.

[INFO] generate aggregation : C:\Users\me\IdeaProjects\myapp-development\target\myapp-1.0\css\public-all.css
[INFO] public-all.css (32029b)
[INFO] generate aggregation : C:\Users\me\IdeaProjects\myapp-development\target\myapp-1.0\css\application-all.css
[INFO] application-all.css (50446b)
Run Code Online (Sandbox Code Playgroud)

但是,如果我尝试将聚合文件输出到另一个子目录,例如${project.build.directory}/${project.build.finalName}/css/public/all.css,则会出现以下错误:

[INFO] generate aggregation : C:\Users\me\IdeaProjects\myapp-development\target\myapp-1.0\css\public\all.css
[WARNING] all.css not created
[INFO] generate aggregation : C:\Users\me\IdeaProjects\myapp-development\target\myapp-1.0\css\application\all.css
[WARNING] all.css not created
Run Code Online (Sandbox Code Playgroud)

为什么他们没有被创造?为什么这甚至是一个警告而不是插件的失败?

这是pom.xml我指定聚合的部分.为什么这不起作用?

                    <aggregation>
                        <removeIncluded>false</removeIncluded>
                        <insertNewLine>true</insertNewLine>
                        <output>${project.build.directory}/${project.build.finalName}/css/public/all.css</output>
                        <includes>
                            <include>**/public/base.css</include>
                            <include>**/fancybox/jquery.fancybox-1.3.4.css</include>
                        </includes>
                    </aggregation>
                    <aggregation>
                        <removeIncluded>false</removeIncluded>
                        <insertNewLine>true</insertNewLine>
                        <output>${project.build.directory}/${project.build.finalName}/css/application/all.css</output>
                        <includes>
                            <include>**/application/reset.css</include>
                            <include>**/application/text.css</include>
                            <include>**/application/960.css</include>
                            <include>**/smoothness/jquery-ui-1.8.11.custom.css</include>
                            <include>**/application/base.css</include>
                            <include>**/jcrop/jquery.jcrop.css</include>
                            <include>**/farbtastic/farbtastic.css</include>
                        </includes>
                    </aggregation>
Run Code Online (Sandbox Code Playgroud)

我检查过,这些目录也存在.如果我尝试指向不存在的目录,yuicompressor:compress则会失败.我只是不明白为什么构建过程实际成功给定有效目录,但它不会在这些目录中创建文件.这没有道理!

我想也许这可能是一个文件系统安全问题,但事实并非如此.

我真的很困惑,为什么这不起作用.

请帮忙.

javascript java build yui-compressor maven

8
推荐指数
1
解决办法
2888
查看次数

递归地将javascript文件的目录压缩为单个文件

我希望能够在我的项目文件夹中运行单个命令,以将我的所有javascript文件(可能与YUI Compressor)连接并压缩为单个输出文件.

如果可能的话,我想部分指定它们连接在一起的顺序,但不必跟踪每个单独的javascript文件.也许可以构建一个如下所示的配置文件:

application.js
excanvas.js
json2.js
jquery*.js
flot/*
backbone*.js
app/screen-*.js
app/main.js
app/crud-*.js
app/*
*
Run Code Online (Sandbox Code Playgroud)

有没有人知道要做这样的事情的现有工具,可以将bash/ruby​​/node/perl脚本连在一起,甚至是更好的方法?我正在构建一个具有大量JS使用的单页应用程序(~40个文件),供低带宽的人使用.

我需要解决方案在我的OS X开发机器上可执行.

javascript bash yui-compressor

8
推荐指数
1
解决办法
1866
查看次数

YUI压缩器是否支持重写相对路径?

问题是,当我运行YUI压缩器(.NET MsBuild任务)时,缩小的css文件保留与原始css文件相同的相对路径,并且在给定我的内容结构的情况下,这会导致图像和其他资源的路径不正确.YUI是否可以选择将其配置为重写此URL?如果没有,是否有其他工具可以帮助解决这个问题?

yui-compressor

8
推荐指数
0
解决办法
269
查看次数

从JavaScript中切换案例中删除死代码

是否有任何压缩机负责移除在应用程序中无法调用的开关盒?

function execute_case(id) {
    switch(id) {
    case 0:
       console.log("0");
       break;
    case 1:
       console.log("1");
       break;
    case 2:
       console.log("2");
       break;
    case 3:
       console.log("3");
       break;
    default:
       console.log("default");
       break;
    }
}

execute_case(1);
Run Code Online (Sandbox Code Playgroud)

如果以上就是我所拥有的,那么理论上情况0,2,3就是死代码并且永远不会被执行.在缩小代码时,是否有任何压缩器具有删除此代码的智能?

我正在看一段代码,它在一个switch语句中有超过200,000个案例,因此问题.

谢谢,-Vikrant

javascript performance yui-compressor google-closure-compiler

8
推荐指数
1
解决办法
369
查看次数

Javascript YUICompressor错误

使用YUICompressor我从我的JavaScript代码中收到以下错误:

    [ERROR] 270:201:missing name after . operator
    [ERROR] 292:6:missing ; before statement

以下是以下行的javascript代码:

第270行:

new _ow.getScript(_ow.wwwurl+'/widget/save?title='+encodeURIComponent(this.obj.title.value)+'&url='+encodeURIComponent(this.obj.url.value)+'&tags='+this.obj.tags.value+'&private='+this.obj.private.checked+'&c='+this.obj.notes.value+'&service='+services+'&token='+(_ow.token ? encodeURIComponent(_ow.token): ''), function(data) {
Run Code Online (Sandbox Code Playgroud)

第292行:

});
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚问题是什么,因为这个Javascript代码适用于所有浏览器.


编辑:我将行分成多行,并发现此代码生成"缺少名称后.运算符":

this.obj.private.checked
Run Code Online (Sandbox Code Playgroud)

私人的关键词,使YUI压缩机发疯?

javascript yui yui-compressor

7
推荐指数
1
解决办法
7406
查看次数

在为ASP.net构建期间缩小内联JavaScript?

我们有一些ASP.net页面,其中包含超过50行特定于该页面的JavaScript.我们想在CruiseControl构建过程中缩小javascript.

我们已经使用YUI Compressor来压缩我们的完整javascript和css文件.但我们无法弄清楚如何进行内联javascript.

是否有一个MSBuild任务来旋转asp.net页面并缩小javascript?

javascript asp.net msbuild minify yui-compressor

7
推荐指数
1
解决办法
4880
查看次数

如何在JavaScript中不写"eval"的情况下执行"eval"

这是交易,我们有一个我们想要压缩的大型JS库,但如果它找到一个"eval"语句,YUI压缩器不能完全压缩代码,因为担心它会破坏别的东西.这很好,但是我们确切地知道什么是eval'd,所以我们不希望它变得保守,因为在MooTools JSON.decode中有一个eval语句

所以基本上问题是,是否有任何替代(可能是创造性的)方法来编写一个返回eval函数的表达式?我试了几个,但没有骰子:

window['eval'](stuff);
window['e'+'val'](stuff);
// stuff runs in the global scope, we need local scope

this['eval'](stuff);
// this.eval is not a function

(new Function( "with(this) { return " + '(' + stuff + ')' + "}"))() 
// global scope again
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?谢谢

javascript mootools json eval yui-compressor

7
推荐指数
1
解决办法
4945
查看次数

得到ant concat忽略BOM的'?

我有一个ant构建,将我的javascript连接到一个文件然后压缩它.问题是Visual Studio的默认编码会将BOM附加到每个文件.如何配置ant以去除原本会出现在结果连接文件中间的BOM?

我的googl'ing透露了这个讨论,这是我遇到的确切问题,但没有提供解决方案:http://marc.info/?l = person-user&m = 118598847927096

javascript ant utf-8 yui-compressor

7
推荐指数
1
解决办法
2574
查看次数

ant + yuicompressor路径错误

我在C:\ Bin\test.js中有一个文件,我想压缩并重命名为test-min.js

我的ant build.xml看起来像这样:

<property name="temp.dir" value="C:\Bin\"/>

<apply executable="java" parallel="false" dest="${temp.dir}">
   <fileset dir="${temp.dir}" includes="test.js"/>
   <arg line="-jar"/>
   <arg path="${yui.dir}"/>
   <srcfile/>
   <arg line="-o"/>
   <mapper type="glob" from="*.js" to="*-min.js"/>
   <targetfile/>
</apply>
Run Code Online (Sandbox Code Playgroud)

我收到以下Java错误:

[apply] java.io.FileNotFoundException:Bintest-min.js:\ Bin\test.js(文件名,目录名或卷标语法不正确)

我已经尝试过我可以提出的路径和文件名的每种组合.我错过了什么?看起来它正在剥离C:\和第二个\

我知道YUI有效,因为我可以从命令行手动完成.

java ant yui-compressor

7
推荐指数
1
解决办法
1841
查看次数