java应用程序开
来源:互联网 发布:ss4电力机车走行部数据 编辑:程序博客网 时间:2024/06/05 19:05
自己对照着一篇英文写的,很粗糙。凑合看吧,有时间再修改完善了。
当你开发一个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
- java应用程序开
- Java应用程序
- Java应用程序
- java 应用程序
- Java应用程序
- java应用程序
- java 应用程序的发布
- Java应用程序打包
- 创建Java应用程序
- Applet加载Java应用程序
- Java技术开发WAP应用程序
- java调用外部应用程序
- java 调用外部应用程序
- JAVA应用程序打开URL
- 构建多线程Java 应用程序
- java运行应用程序
- Java应用程序国际化
- 开发 Java Card 应用程序
- 实现多个相关联表插入数据的一些方法
- 关于jsp上传文件的代码,大家可以参考一下。
- Linux NFS的开启和设定
- stl allocator 一些 心得笔记
- 清空SQL SERVER数据库表里面的数据
- java应用程序开
- Microsoft SQL Server错误233的解决办法
- C++ Template 中的typename、class关键字
- 都市人晚餐的三大禁忌
- MAX232资料
- C#回调函数什么意思
- http请求相关知识备忘 -- 更新中
- DBMS_STATS.GATHER_SCHEMA_STATS介绍使用
- OCP开闭原则