`
jindw
  • 浏览: 509932 次
  • 性别: Icon_minigender_1
  • 来自: 初到北京
社区版块
存档分类
最新评论

JSI2Alpha及JSA1beta 发布:

    博客分类:
  • JSI
阅读更多
JSI2Alpha及JSA1beta 发布:

引用
JSI简介:

JSI 是一个 开放的、无侵入的 脚本库管理框架,内核不提供任何具体功能,有一些功能子项目,如网页装饰引擎。


JSI2性能测试报告:http://jindw.iteye.com/blog/93118

更多信息请查看:http://www.xidea.org/project/jsi/

JSA简介:
JSA最初是做JSI编译处理的一个小工具,现在也可以用来混淆、压缩脚本。支持swing和ant task两种工作方式。
可以通过webstart启动:启动JSA(允许访问文件系统)沙箱内运行(功能受限)



这次发布的JSI2Alpha相对于以前的预览版本,做了一次全面的重构;同时对API做了些简化。

目前JSI2的公开API有:


/* 导入函数 */
$import(<string>path,<boolean|Function>callbackOrLazyLoad[可选参数],<Object>target[可选参数])

/* 日志设置相关 */
$JSI.setDefaultLogLevel(level)
$JSI.setLogLevel(pathPattern,level)

/* 装饰引擎相关函数 */
$JSI.addDecoratorProvider(pkg,alias…) //添加装饰包.
$JSI.decorate ( ) //准备执行装饰器任务,一般在配置文件(config.js)中调用. 

/* 用于包定义的Package成员函数,在__package__.js中调用(this指向当前package对象) */
this.addScript(scriptPath,objectNames)//添加脚本及其声明的对象(函数、方法名). 
this.add*Dependence(thisPath,targetPath,beforeLoad)//添加脚本依赖.
this.setImplementation(realPackage)//设置具体实现包(当前包只是其别名,并无任何内容)。


我们会尽量将JSI做成与具体功能无关(专著于脚本管理)。

对于js.*.*这个类库,做了些精简。
只保留下列元素:
#js.html //保留这个包,因为这些实在太常用了。
   * BrowserInfo
   * EventUtil
   * StyleUtil

#js.util//保留这个包主要因为异步装载用到这些类库
   * LoadTask
   * Request
   * ScriptLoadTask
   * TaskQueue



发布文件说明:
自该版本启,source目录将不再打包。
但是在scripts目录下新增boot-with-source.js文件,该文件中包含全部源代码的数据。
里面编码的源代码可以通过我们的文档工具查看。让大家习惯一下这个工具的使用:)

JSA1beta:增加了对JSI2的编译支持,同时对于普通脚本的压缩,也增加了一些功能:
  1. ant task 增加多文件分组合并。
  2. swing ui 修正文件编码的bug。




下载:
javaeye group:  http://jsi.group.iteye.com/shares
sourceforge:    <系统最近好像有问题,我的文件一直没能上传成功> 。。。。。
分享到:
评论
19 楼 minimu 2008-04-03  
使用JSA遇到一个问题:压缩后关闭的时候99%的时候是无响应状态,需要动用任务管理器。

不知道其他人有没有遇到这个问题
18 楼 jindw 2007-08-22  
刚才测试一下,换成系统lookAndFeel,启动时间慢了20秒钟,还是使用默认laf吧,字体难看一点也比启动慢一点强:)
17 楼 jindw 2007-08-22  
谢谢报告,bug已修正,马上发布新版本。

16 楼 birdjavaeye 2007-08-22  
报告一个bug:
f = function () {
C: {
D: {
break C;
break D;
}
}
}
压缩时报告undefined labe,压缩结果是:
f=function(){A:{D:{break A;break B;}}};
似乎是D被改名为B了,break改了而D:那里没改
JSA20070822版
15 楼 咖啡刀 2007-08-22  
呵呵
那很期待下个版本!!
他的体积不会增大吧!!
14 楼 jindw 2007-08-22  
刚才试了一下,换成系统laf就没有字体的问题,下个版本换
13 楼 咖啡刀 2007-08-22  
呵呵
这个到是不影响使用啊!!
只是可能感觉上会差点啦!
开初我以为是我jdk的问题,版本底,最后重新下了个最新的jdk装上后还是一样。
所以就问你了啦
^~^
12 楼 jindw 2007-08-22  
^_^,这个问题我一时也想不到解决的办法,不过打死我也不想还会ibm的那个庞大的类库,那里有很多字体的定义。我到java板块问问,看有没有人解决过这种情况
11 楼 咖啡刀 2007-08-22  
两个版本的文字显示效果如下:
10 楼 jindw 2007-08-22  
对了,咖啡刀。
你说字体发虚能不能截个屏出来看看。
这个可能和java的版本有关系。我自己没有修改过字体的。
9 楼 咖啡刀 2007-08-22  
哦!!
谢谢!!

这个东西值得推荐啊!!

^^~~
8 楼 jindw 2007-08-22  
^_^,自1.0开始,压缩算法一直没有大变化。只是修正了一些小bug。

瘦身主要是更换了一个第三方库,以前用的是ibm的icu4j来处理字符集识别,后来更换成mozilla的chardet,文件一下子小了很多。

字符发虚的问题我一会检查一下:)
7 楼 咖啡刀 2007-08-22  
关注JSA,关注这个群!!!

在见到最新的JSA20070822这个版本的同时,让我有点疑惑的问题出现了,在JSA-1.0alpha这个版本里,他的自身大小应该是4.60M,可在JSA20070822这个版本里,他自身的大小应该是768kb,想问下,这两个除了版本的区别外,在压缩算法上有变化么?还有瘦身怎么这么多啊!!!不会影响起性能吧!(由于一直从事.Net的开发,才准备开始学习java所以有些不懂,请凉!)

个人测试了下,同时进行压缩prototype.js,二者压缩后的大小是一样的.这能说明他们中的压缩算法是没有变化的么??

...
小小建议,JSA20070822这个版本的界面没JSA-1.0alpha这个界面看起来好,主要是发现那个字体有虚的现象,另外,在工作区内支持了右键菜单,如果能支持复制与粘贴两项,就会更符合一般的使用习惯!
这样会更好一点.

6 楼 jindw 2007-07-18  
咖啡刀 写道
恩!!!谢谢!最先我也是在SF上见到的,接着就是在51js和javaeye上见到的,以至加入楼主的圈子了!!!

同时很谢谢jindw,目前正在使用这个工具,同时在适当机会正向我熟悉的程序员朋友在推荐!!!


JSA的完善,更庞大的用户群作用明显。
非常感谢JSA的每一个用户,如果不是你们,我也没有完善这个工具的激情了:)

haha11111 写道
感谢楼主的压缩工具,目前将JS的大小由200K压缩到了90K,效果还是很明显的。

但发现一个问题,原200k未压缩的JS IE载入时间为0.1S(使用本地缓存,不下载),压缩后的JS IE的载入时间需要0.5S,慢了不少。这个不知道有何办法能解决?

我想可能是你采用了文本压缩的原因吧,文本压缩后客户端需要采用脚本程序解压数据,是一个有一定开销的操作。

关于文本压缩的性能,我曾经写过一片测试报告:
http://www.iteye.com/topic/82153
5 楼 haha11111 2007-07-18  
感谢楼主的压缩工具,目前将JS的大小由200K压缩到了90K,效果还是很明显的。

但发现一个问题,原200k未压缩的JS IE载入时间为0.1S(使用本地缓存,不下载),压缩后的JS IE的载入时间需要0.5S,慢了不少。这个不知道有何办法能解决?
4 楼 咖啡刀 2007-07-15  
恩!!!谢谢!最先我也是在SF上见到的,接着就是在51js和javaeye上见到的,以至加入楼主的圈子了!!!

同时很谢谢jindw,目前正在使用这个工具,同时在适当机会正向我熟悉的程序员朋友在推荐!!!

3 楼 jindw 2007-06-22  
咖啡刀 写道
谢谢!!!
现在JsA怎么没得下载啦

哈哈


JSA1beta是前几天发布的,在sf上;但是今天好像sf有点问题,jsi就是传不上去,没有办法,只好放javaeye群了。

JSA可以到sf上下载,如果不用ant任务,也可一直接webstart启动,省去升级的麻烦。
2 楼 咖啡刀 2007-06-22  
谢谢!!!
现在JsA怎么没得下载啦

哈哈
1 楼 trydofor 2007-06-22  
恭喜,并再接再厉:)

相关推荐

    JSA脚本压缩工具

    1. 下载并解压文件包,确保包含JSA-20071021.jar、run.bat和JSI.jar这三个文件。 2. 双击运行"run.bat",工具将自动启动。 3. 使用工具提供的界面或命令行参数,导入你需要压缩的JavaScript文件。 4. 设置压缩选项,...

    jsencrypt.min.js

    《JSencrypt.min.js:JavaScript加密库的精简版本》 在Web开发中,数据安全尤为重要,尤其是在涉及到用户敏感信息如密码、个人信息等的传输时。JSencrypt.min.js是一款基于JavaScript的加密库,专为前端开发者设计...

    JS文件加密工具,比较实用

    4. **JSA-1.0alpha2版本**:这表明JSA工具的一个早期版本,可能包含基本的功能,但可能存在一些已知或未知的问题。在实际使用时,应关注更新版本以获取更稳定和完善的特性。 5. **使用步骤**: - 下载并安装JSA...

    脚本分析、压缩、混淆工具 JSA新版本发布,压缩效率提高大约10%

    ### 脚本分析、压缩、混淆工具 JSA新版本发布 #### 概述 脚本分析、压缩、混淆工具 JSA(以下简称“JSA”)的新版本已正式发布。此次更新重点在于提升压缩效率,据官方数据表示,相较于旧版本,新版本的压缩效率...

    海尔液晶电源 0094001224B JSI-190419-050 JSI-220409-050原理图.pdf

    根据提供的信息,我们可以了解到这份文档是关于海尔液晶电视电源板(型号:0094001224B JSI-190419-050 JSI-220409-050)的原理图。这份原理图详细地展示了电源板的内部电路结构、元件布局及其连接方式等关键信息。...

    JSI-full-2.0

    2. **example**:这个目录可能包含了一些示例代码或页面,用来展示JSI-full-2.0的功能和用法。开发者可以通过这些例子快速理解和学习如何使用这个项目。 3. **images**:存放图像资源的文件夹,可能包括logo、图标...

    JSI-GAN:JSI-GAN的官方存储库(于AAAI 2020接受)

    这是JSI-GAN(AAAI2020)的官方存储库。 我们提供了培训和测试代码,以及经过训练的权重和用于JSI-GAN的数据集(train + test)。 如果您发现此存储库有用,请考虑引用我们的。 参考: Soo Ye Kim *,Jihyong Oh ...

    JSI, java脚本开发工具

    JSI框架提供一个无侵入的脚本库管理解决方案,和一个全面的前端开发调试、文档解析、模版编译、打包导出环境支持。 作为一个开发期间的脚本管理工具,让开发者在开发期间享受JSI带来的种种便捷,也可以作为一个运行...

    jsi-modules:用jsi进行模块学习

    在JSI中,你可以模拟一些Node.js的特性,例如事件驱动编程和非阻塞I/O,这对于理解Node.js的工作原理及其在大型项目中的应用非常有帮助。 "jsi-modules-master"压缩包很可能是包含了一系列的练习和示例代码,涵盖了...

    海尔液晶电源背光板 0094001274E JSI-320411 原理图.pdf

    ### 海尔液晶电视电源背光板0094001274E JSI-320411原理图解析 #### 概述 本文将详细解析海尔液晶电视电源背光板0094001274E JSI-320411原理图中的关键元件及其功能、电路设计思路与工作原理,帮助读者更好地理解该...

    I2Djs:Integrated-2D是用于SVG,Canvas和WebGL上下文的Javascript 2D渲染框架。 I2Djs为所有渲染上下文提供相同的API

    集成式2D jsI2dJs-SVG +画布+ WebGL Integrated-2D-是一个开放源代码Javascript框架,用于在SVG,Canvas和WebGL上下文中呈现2D图形。 I2D的简单语法和语义使您可以将矢量图形和位图的功能结合起来,轻松实现复杂的...

    轻量系统JS-UI框架子系统

    **轻量系统JS-UI框架子系统详解** OpenHarmony作为一个开源操作系统,旨在为各种智能设备提供跨平台的解决方案。为了方便开发者构建针对轻量级设备的应用,它提供了"轻量系统JS-UI框架子系统"。这个框架是...

    JavaScript中文转拼音,JS中文转拼音插件,中文转拼音(JavaScript)

    1. **字符编码处理**:首先,需要将中文字符转换为Unicode编码,因为JavaScript原生支持Unicode字符处理。 2. **拼音数据库**:使用预定义的拼音数据库,这个数据库包含所有中文字符及其对应的拼音。当遇到一个中文...

    机械制图知识点总结.doc

    2. 缩小比例:1:2,1:2.5,1:4,1:5,1:10,1:20,1:50,1:100,1:200,1:500,1:1000 3. 放大比例:2 :1,5:1,10:1,20:1,50:1,100:1 五、线之种类与用途 机械制图中使用的线有多种,包括: ...

    using使用JSI为React Native提供快速简便的多线程-C/C++开发

    react-native-multithreading using使用JSI的React Native的快速简便的多线程处理。 安装npm install react-native-multithreading npx pod-i react-native-multithreading using使用JSI进行React Native的快速简便...

    react-native-multithreading:using使用JSI为React Native提供快速简便的多线程

    您可以自己打补丁,也可以等到它发布后再发布。 :warning: 警告:这仍然只是概念证明-请勿在生产中使用该库! :warning: 为什么 由于越来越成为主流,因此可能有些功能实际上正在阻塞并且需要一段时间才能执行。 ...

    java推荐算法源码-jsi:Java空间索引

    A Dynamic Index Structure for Spatial Searching”中所述。 () JSI空间索引特意限制了特征,在少数事情上做得很好。 它特别快。 该代码是开源的,并在 2.1 或更高版本下发布。 用法 强烈建议首先查看位于 的 jsi-...

    js使用i18n实现页面国际化的方法

    1. 页面引用插件 在文章的代码示例中,可以看到在HTML页面上引用了jQuery插件和i18n库文件,确保页面具有进行国际化处理的基础。 ```html ${path}/plugings/jQuery-easyui/jquery.easyui.min.js"&gt; ${path}/js/jquery...

    jsish:Jsi是一个小型的C嵌入式javascript解释器,具有紧密编织的Web和DB支持

    Jsi是带有内置websocket-server,sqlite和C -extensibility的javascript -ish解释器。 | | | 快速开始下载适用于 / 的二进制文件: wget ...

    jsinclude:一个 Django 1.3+ 模板标签,用于将 JavaScript 排除在模板之外

    JS包含 一个 Django 1.3+ 标签,用于将 JavaScript 排除在模板之外。 $ pip install jsinclude ...console.log("I'm a " + $jsi.age + ' year old ' + $jsi.gender); 句法: {% jsinclude &lt;path&gt; [{arg}] %} Django

Global site tag (gtag.js) - Google Analytics