`

JSBuilder2(extjs.com/products/jsbuilder )是配合Ext 3新发布的AJAX打包工具

 
阅读更多

摘自:http://extjs.org.cn/node/547

 

JSBuilder2(extjs.com/products/jsbuilder )是配合Ext 3新发布的AJAX打包工具,用Java语言编写,制成JAR格式执行文件发布。作为一个方便开发者的打包工具,它内含有几种开源项目在内,包括 Rhino Project(著名的JavaScript编译器)、YUI Compressor(压缩JS/CSS)和Java环境下JSON的编码器(来自www.json.org),方便在JavaScript和CSS项目 中使用。

 

下载地址:

http://dev.sencha.com/deploy/JSBuilder2.zip

 

JSBuilder2具有特性如下:

跨平台的Java应用程序
用法简单
以JSON为配置文件的结构
采用YUI Compressor来进行文件的压缩
在开发阶段到部署阶段之间,资源文件都可以轻松迁移
与第一版不同,JSBuilder2是纯命令行的工具,因此我们必须了解一下它的参数如何。首先运行JAR包的执行文件必须要有java.exe。 通常我们将该命令加入“环境变量”中,然后加入-jar参数即可以运行这个JSBuilder2.jar文件。关于JSBuilder的参数列表,可见:

--projectFile -p (必填的)jsb2文件,该文件定义了打包的具体任务。 Location of a jsb2 project file
--homeDir -d (必填的)生成的主目录,通常就是项目部署的目录。
--verbose -v (可选的参数)输出正在生产的详细过程。
--debugSuffix -s (可选的参数)为便于调试,生产JS调试文件的后续名称,默认为“debug”,以表示这是调试用的JS文件。
--help -h (可选的参数)显示帮助。
Windows平台上的用法:

java -jar JSBuilder2.jar --projectFile C:/Apps/www/ext3svn/ext.jsb2 --homeDir C:/Apps/www/deploy/

Linux或OS X平台上的用法:

java -jar JSBuilder2.jar --projectFile /home/aaron/www/trunk/ext.jsb2 --homeDir /home/aaron/www/deploy/

上面提到JSBuilder的jsb2文件,很明显的是为第二版所服务的配置文件,以区别于旧版。在第一版的时候,*.jsb是采用XML文件作为配置其 配置文件的,那时还是.Net WinForm写好的程序。而在这次Java写的版本中,却是使用了JSON作为其配置文件的格式。我们说到JSBuilder既有Moliza的 Rhino JS引擎也有JSON.org的包同时存在,它既可以让JS引擎以eval()函数获得JSON对象,也可以让Java的代码获得这个JSON对象,都是 比较方便的方法。那么使用XML是不是较为不便呢?也不一定的,因为我们可以从Rhino的开源信息得到了解,较新版的Rhino是升级到 JavaScript 1.8,也就正式支持EXA的标准。在EXA的支持下XML转为JS对象轻而易举。当然这又是另外一件事了。

下面我们说一下这个JSON格式的清单。

The top-level keys are:
- projectName: String 说明该项目。
- deployDir: String specifying directory to create within the homeDir 
specified on the commandline
- licenseText: String specifying the header of all .js and .css, use /n for
newlines.
- pkgs: An array of package descriptors
- resources: An array of resource descriptors

Package Descriptors:
- name: String describing the package 
- file: String specifying the file to create
- isDebug: Boolean describing whether to generate debug builds
This configuration is currently UNUSED. Debug and compressed
versions will ALWAYS be generated.
- fileIncludes: An array of files descriptors which need to be included in this
package.
- pkgDeps: An array of the package descriptor file strings that this 
package depends on. The behavior of this configuration relies 
on the includeDeps configuration.
- includeDeps: Boolean describing whether or not to include dependencies in the
outputted file. Defaults to false.

File Descriptors:
- text: String describing the file to be included
- path: String describing the directory of file to be included

Resource Descriptors:
- src: String describing the folder to move resources from
- dest: String describing the folder to move resources to
- filters: String to create a RegEx which specifies how to filter the 
files which are copied from src to dest. All .svn and hidden 
files will automatically be excluded. Note that all /'s must
be encoded //.

Filter Examples:
- ".*" A filter to copy all files
- ".*[//.js|//.css]" A filter to copy all js and css files.

从清单中可以看出,JSON格式仍然是以Key/Value,键/键值列出。我们定义好我们自己的配置后,保存为一份*.jsb2文件让JSBuilder读取。

分享到:
评论

相关推荐

    JSBuilder2使用方法

    JSBuilder是一款针对JavaScript的优化工具,尤其在处理ExtJS项目时表现出色。它是一个跨平台的Java应用程序,允许开发者通过JSON配置文件进行项目的定制化优化。JSBuilder2作为JSBuilder的升级版,不仅支持...

    Ext JS 4.0编码规范

    - `/dir/to/js/extjs/ext-4.0.x/ext-all.js`:压缩版 Ext JS 库,适用于生产环境,建议使用 JSBuilder 进行自定义打包。 - `/dir/to/js/extjs/resources`:存放自定义的静态资源文件,如 CSS 样式表和图像文件。 - ...

    JsBuilder

    **JsBuilder:JavaScript构建工具详解** JsBuilder是一款强大的JavaScript代码构建工具,专为开发者设计,旨在简化和优化JavaScript项目的构建过程。它可以帮助开发者合并、压缩、混淆和版本化JavaScript文件,提高...

    JSBuilder2介绍及应用范例

    在实际开发中,JSBuilder2可以与构建工具如Grunt、Gulp或Webpack配合使用,通过配置文件定义打包规则。例如,你可以在项目根目录下创建一个`JSBuilder2.json`配置文件,指定需要合并和压缩的文件路径,以及输出的...

    ExtJs使用的JavascriptBuilder工具

    ExtJs使用的JavascriptBuilder工具

    extjs4.x 配置所需jsb和js文件

    2. **设置项目目录**:创建一个新的项目目录,用于存放你的应用代码和配置文件。在终端或命令提示符中,导航到这个目录,并使用Sencha CMD初始化项目,如 `sencha -sdk path/to/extjs create app MyApp MyApp`。 3....

    EXT瘦身所需文件-绝对有用

    3. `extjs_builder_tree.rar` 和 `ext-jsb2.zip`:这两个文件可能是JSBuilder2的补充资源或者不同版本。rar和zip都是常见的文件压缩格式,解压后可能包含配置文件、模板或额外的说明文档,以帮助开发者更好地利用...

    JSBuilder2:ExtJS(Sencha)JavaScript项目构建器

    JSBuilder2 ExtJS(Sencha)JavaScript项目构建器该项目由ExtJS开发团队创建,以构建其项目,例如ExtJS和ext_core。 后来它演变为项目。 目前,Sencha认为该项目已过时,并将其从站点中删除。 但是一些旧项目仍然...

    extjs4.0.7附带的jsb3文件,已修正路径错误

    在EXTJS开发过程中,开发者通常会用到JSBuilder工具,这个工具可以读取JSB3文件来生成优化过的JavaScript代码,从而提高应用的加载速度和性能。JSB3文件能够帮助减少代码体积,合并多个文件为一个,去除未使用的代码...

    jsBuilder

    **jsBuilder**是一款专为JavaScript开发人员设计的强大工具,它主要功能是对JavaScript代码进行压缩,以提高网页加载速度,减少网络传输的数据量。在Web应用日益复杂,脚本文件日益庞大的今天,jsBuilder成为了优化...

    附件贴

    在本例中,可能是一个关于JavaScript构建工具的讨论或者是一个实用工具的发布。"JSBuilder2.jar"是一个Java可执行文件,通常是一个程序或者库,可能是用于自动化JavaScript代码构建的过程,帮助开发者整理、压缩和...

    JS Builder

    **JS Builder** 是一个专为JavaScript开发设计的工具,主要用于对JS代码进行混淆和合并操作。在Web开发中,为了提高代码的安全性和加载效率,开发者通常会使用混淆工具来使得源代码难以阅读,同时通过合并工具将多个...

    ext-js4.x配置所需jsb和js文件

    Ext JS 是一个强大的JavaScript库,主要用于构建富客户端的Web应用程序。在4.x版本中,它引入了更完善的组件模型和布局管理,提升了用户体验。本文将深入探讨如何配置Ext JS 4.x项目,特别是涉及到jsb(JavaScript ...

    bootstrapjs:Web应用程序启动库,包括动态CSS和Javascript加载和检测,启动顺序,浏览器和版本依赖性以及启动画面支持

    BootstrapJS提供按需脚本加载以及自动脚本加载检测和回调通知。 引导组(包括组排序)为开发人员提供了一种定义依赖项,支持组级回调等的方法。... java -jar /path/to/JSBuilder2/JSBuilder2.jar -p ./build.jsb2 -d .

    spket-1.6.23_eclipse

    再者,SPket-1.6.23包含了一些辅助开发工具,例如JSBuilder3(即sdk.jsb3)。这是一个JavaScript构建工具,可以帮助用户整理和优化代码,合并多个JavaScript文件为一个,以及压缩代码以减少加载时间。这对于生产环境...

    网页特效梦工厂 自动生成器(简单)

    而"wangyeba.com@JSBuilder"可能是该生成器的官方网站或者一个相关工具的名称,用户可以在这里下载或了解更多关于这个自动生成功能的详细信息,包括可能的更新和升级。 使用这样的工具,中小级用户可以大大节省开发...

    网页梦工厂绿色石皮版

    3. **JavaScript Builder**:从文件名称"JSBuilder_gpxz"我们可以推测,这可能是一个用于生成和管理JavaScript代码的工具。JavaScript是实现网页动态效果的关键,JSBuilder可能是帮助用户构建和优化JavaScript脚本的...

    将nodejs打包工具整合到鼠标右键的方法

    打包用到的批处理文件代码如下: 代码如下:@echo offtitle Builder – 正在合并 …color 03REM =====================================REM jsbuilder beta版REMREM =====================================SETLOCAL...

    pppoe

    - JsBuilder可能是一个JavaScript构建工具,虽然它通常与Web开发相关,但在PPPoE上下文中,可能是用来编写脚本自动化PPPoE连接过程或者进行网络诊断。 - QTP(QuickTest Professional,现称为UFT - Unified ...

Global site tag (gtag.js) - Google Analytics