今天发现了个软件,可以在电脑上查看并控制Android手机。同时发现该软件使用Java Web Start(javaws)来运行,于是查了下相关资料:
Java(TM) Web Start技术自述:
http://java.sun.com/javase/technologies
/desktop/javawebstart/1.2/zh/docs/Readme_zh_CN.html

该自述文档中一再强调Java Web Start使得应用程序变得像HTML一样,直接从浏览器启动(启动简单,只需一次点击,即可完成部署、运行),每次启动都自动检查版本更新,而且拥有比HTML强N倍的交互性,感觉是不错的。跟同事交流了一下,发现网上已经有很多实例及应用了(毕竟已经是JDK 5就带有的功能),而且有3D实例的。但缺点还是不少。

首先,Java运行环境是个致命伤。就因为要装个庞大客户端(JRE),所以Applet才流行不起来。还要浏览器插件支持,否则只能下载jnlp文件到本机,然后敲命令运行。Flash能流行起来,其小巧的客户端起了很大作用。

其次,是来自HTML 5的冲击。主要为了提高Web页面交互而诞生的HTML 5,明显想取替Flash的地位,也没把Java放眼里(不知道JavaFX又如何呢)。网上已经有直接在浏览器上运行Quake的视频,就是用HTML 5的3D API实现的。

再次,跨平台的问题。显然手机上不能使用,某些JDK版本更是没附带javaws这个文件(例如我用的CentOS 5.4 x86_64上的openJDK就没有支持该功能,为此我苦恼了整个晚上)。

还有就是即使程序能在本地缓存起来,但是有效期一过,就得连上Internet才能访问。特别是那些有效期设在当天的,每次启动都要重新下载程序。

PS. Java已经成为全球最多人使用的计算机编程语言了,不知道JDK 7会带来什么改进呢。

标签: javaws

评论已关闭