java应用程序开

自己对照着一篇英文写的,很粗糙。凑合看吧,有时间再修改完善了。

当你开发一个java客户端应用程序时,不论你使用任何自己心仪的GUI框架(AWT、Swing、SWT),一个时刻萦绕在你脑海里的问题就是:采取什么样方式能方便快捷的把你的应用程序发布给最终用户。

我想大多数人都同意客户是否接受你的程序很大程度上依赖于对你的程序的第一印象,而你的的程序的安装过程则是客户接触你程序的第一步。对于java应用程序来说,安装过程的繁琐向来为人所诟病。一般的过程是拷贝所有的类文件或者包文件到你的操作系统中,在classpath系统变量中添加相关类路径,然后使用:java 类名称 来开始你的应用程序,可是偏偏又会发现在这之后还是出现很多问题,回头一看,可能是因为忘记在命令行中加上-Djava.library.path属性。

1。安装制作程序

Windows用户在安装程序上有很多选择,我推荐使用Nullsoft Install System来为你的应用程序生成安装文件( http://nsis.sourceforge.net/home/ ),它可以生成很好的安装反安装程序。NSIS提供了一个不错的工具来编写安装程序生成所需的脚本(HM NIS EDIT: 一个免费的NSIS编辑器 http://hmne.sourceforge.net/ )。使用这个工具你可以随心所欲的创建自己的安装脚本。

2。运行程序

运行程序时安装完成后接下来的步骤,如果你选择编写一个.bat文件来运行你的应用程序,也未尝不可,不过这给人的感觉一般是不够专业。有很多java运行程序可以让这个过程变得更加简单、更加专业。我最喜欢的是Jacob Marner编写的The Marner Java Launcher( http://www.rolemaker.dk/nonRoleMaker/javalauncher/marner_java_launcher.htm )它是一个用c写的小程序,通过配置文件启动java虚拟机来运行你的应用程序。

让我们来假定一下,你写了一个小应用程序,其中使用到了很多java库和工具包,比如一个基于SWT的应用程序,可能会用到jface.jar、swt.jar和其它包这时候你可以建立一个单独的目录来存放它们,当然你还需要SWT用到的本机动态链接库(也就是swt-awt-win32-xxxx.dll和swt-win32-xxxx.dll),你可以把它们放到另一个单独的目录中去。

接下来,我们打包我们自己的应用程序,生成.jar文件。里边要包含一个manifest.mf描述文件,这个描述文件可以指定你的应用程序运行时的入口类(也就是运行时的主程序),也可以在这个文件里边添加类路径里边所要包含的库文件。大致看起来如下:

Manifest-Version: 1.0

Main-Class: com.leowu2000.MainApp

Class-Path: ./libraries/jface.jar ./libraries/log4j-1.2.8.jar ./lib/swt.jar

然后,我们就可以使用命令行 java -jar application.jar来运行应用程序。不过,遗憾的是,还是会有错误,原来应用程序需要调用本机动态链接库,你可以用以下命令行来代替:

java -Djava.library.path=./native/ -jar application.jar

然后就是我们要为运行器写的配置文件launcher.cfg内容如下:

.javaw.exe -Djava.library.path=./native/ -jar application.jar

如果你需要应用程序运行时在命令行窗口打印出相关信息,你可以用java.exe来代替javaw.exe。现在双击放置在你应用程序主目录下边的Launcher.exe(没有的话,记得要拷贝)就可以运行你的应用程序了。

剩下的就是把所有主目录下边的文件打包成一个发布用的应用程序。当然,为了显得更加专业,你可以使用工具更改一下launcher.exe的图标,更加适合你的应用程序。这里推荐免费软件Resource Hacker( http://www.users.on.net/johnson/resourcehacker/

3。结语

我们知道,要完成以上步骤可能需要更多的工作,另外还有一个很有前途的安装系统,那就是Java WebStart。而且还有许多其它的多平台的安装系统都承诺“编写一次,到处运行”。不过,我还是喜欢以上的解决方案。

出处:http://www.keyboardsamurais.de/mt/archives/000134.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值