zoukankan      html  css  js  c++  java
  • java打包exe文件最终以setup形式发布的解决之道

    首先,将编译好的程序打包成jar文件,然后做出exe,这样代码就不可见了;但是exe文件在没有安装jre的电脑上不能运行,如果要求客户再去安装jre 设置环境变量 就不雅了。我们需要将jre打包。

    这几步操作网上介绍的插件和方法很多,但有的好用有的不好用,而且有的还需要注册。经过尝试比较,在“千里冰封”的博客上得到了很大的帮助。整理一下。使用这几个工具,您也可以顺利的发布您的java程序!

    1 打包成双击可执行的jar文件。

    推荐插件:fatJar(Eclipse使用)

    下载地址 http://sourceforge.net/project/showfiles.php?group_id=115990&package_id=125924

    我用的是Eclipse,它自带的打包方法在打包一些图片等资源时不是很爽。可以使用这个插件。

    安装方法解压后将plugins文件夹下的net.sf.fjep.fatjar_0.0.24文件夹拷到eclipse安装目录的plugins 下。

    用此工具可以方便的将eclipse中的工程打包成jar文件。如果是要打成可执行的jar请注意选取主类。

    你的项目=〉Export..=>向导里有fat jar =>...

    2 将jar文件转换成exe文件。

    推荐工具:exe4j

    用exe4j把java打包成exe

    http://www.blogjava.net/hadeslee/archive/2007/10/12/152228.html

    在我们写程序的时候,有时会有一种需求,那就是希望我们的程序是一个可执行文件,而不是一个 jar文件,其实大部份时候,可执行的jar文件都可以满足要求,但是如果我们的程序是需要保护的,那么打包成jar文件就不太安全了,因为jar文件就是一个解压缩文件,一解压就什么都能看到了,当然也可以选择混淆,但是混淆了以后排错就没那么容易了,因为混淆的时候,把一些类的信息都混淆了。如何既保证代码的安全又容易排错呢?那么打包成exe就是一种很好的办法了,其实我今天介绍这个方法并不是希望大家去打包成exe文件,因为exe文件毕竟不是跨平台的,用了exe的格式就失去了java的初衷了。

    exe4j可以打包成各种格式的exe,可以把jar打包进exe,也可以引用一个外部的 jar文件,还可以打包成windows服务的程序,并且可以设置最低jre的版本,还可以设定启动画面,虽然java6.0已经实现了这一点,但是还是没有exe4j生成的启动画面快。

    3 将exe文件并jre打包成安装文件,可以在没有安装java虚拟机的电脑上运行

    推荐工具:install4j

    Install4j介绍

    http://www.blogjava.net/hadeslee/archive/2007/10/15/152855.html

    install4j是一个功能强大的,多平台Java安装文件生成工具,用于生成Java应用程序本地化的安装及应用程序发布。 install4j 的优异性在于它易于使用,紧密的集成到目标平台,以及灵活的JRE 管理与部署选项。

    创建发布树

    install4j的图形用户界面允许你:

        * 完全自定义发布树

          在发布树的每一个目录中,你能设置整个目录内容或是磁盘上任何目录的单个文件。定义的视图与结果视图让你能完全控制安装程序将发布的文件。

        * 处理特定平台的差异

          install4j提供方便的“包含/排除”机制,使其适应平台方式来进行发布。

        * 针对Unix, Linux 及Mac OS X所定义的文件权限

          对发布树的每一个元素,当其安装在类似于Unix这样的平台上时,你能自定义用户访问的权限。

        * 定义优良的卸载策略

          对发布树的每一个元素,你能决定在卸载时是否删除它。

        * 定义覆盖策略

          对发布树的每一个元素,你能配置不同的覆盖策略,当安装过程中需要覆盖文件时,这些覆盖策略会指示nstall4j进行相应的操作。

        * 定义安装的组件

          你能定义文件及目录的分组,形成分离的安装组件,这样你就可提供给用户来选择只安装一定的组件。

    其实一个好的应用如果不太好布署,那么别人也只能对它望而兴叹了,现在有了 install4j,很多布署的问题几乎全部解决了.我们可以用exe4j打包java应用,然后用install4j发布java应用,以前java程序布署难的问题,现在几乎都解决了.install4j不但用于打包很合适,并且它还提供了一组很强大很实用的与平台相关的api.这些对于扩展我们的程序也是有很大的帮助的.

    from:http://lzc2125.blog.163.com/blog/static/42265920087455544983/

     


    Tags:

    原创文章如转载,请注明:转载自:飞扬部落编程仓库 : http://www.busfly.cn/csdn/

  • 相关阅读:
    RN-Android构建失败:Caused by: org.gradle.api.ProjectConfigurationException: A problem occurred configuring root project 'AwesomeProject'.
    Android更新包下载成功后不出现安装界面
    真机调试: The application could not be installed: INSTALL_FAILED_TEST_ONLY
    react native 屏幕尺寸转换
    Android Studio生成签名文件,自动签名,以及获取SHA1和MD5值
    React Native安卓真机调试
    git提交代码报错Permission denied, please try again
    The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.
    命令行设置快捷命令
    Linux 常用指令
  • 原文地址:https://www.cnblogs.com/alamps/p/1490418.html
Copyright © 2011-2022 走看看