• Java/SWT/JFace项目打包总结注意事项


               最近想把写的一个JFace项目打包成jar文件,想双击就能运行的那种,结果打包过程遇到了许许多多问题,折腾了我好久,最终终于打包完成,我把打包过程中遇到的问题总结一下,如果打的包不能运行,请挨个对比检查,是否所有的东西都符合要求。

            至于怎么打包,怎么导出,在网上搜索教程,很多的,我这里只总结配置MANIFEST.MF文件的问题。因为这个配置文件是打包过程中最重要的,jar文件无法运行基本都是这个配置文件的问题。

      

    1.打包时最好自己手动创建META-INF签名文件夹,里面创建MANIFEST.MF文件
    2.MANIFEST.MF文件中必须包含【Manifest-Version:】,如果是可以直接运行的jar文件,还用【Main-Class:】指定主类。
    3.引用的依赖包导出时不用选择!因为要调用时根本访问不到jar包内部,必须在外部单独存放。
    4.所有的冒号后面必须有一个空格,不然运行必出错!
    5.引用的依赖包用【Main-Class:】描述,如果有多个包,中间用空格分开,包名不宜过长,如果有很多包名特别长的包,用回车加空格隔开。最重要的是,最后一个包名后面加一个回车!
    6.依赖包的路径,一定要用相对路径!!!绝对路径绝对会出错的。
     
    附上我打包成功时的签名文件内容:

        

       

            最后顺带提一句,javaw -jar这个命令一般用于GUI图形程序,如果打包的程序是图形界面的,最好使用此命令,如果程序运行异常,异常信息会以弹窗的形式的弹出来,否则程序出错时,只会看到屏幕一闪,什么都没了。相反,如果你的程序不是图形程序,最好使用java -jar命令。

    附:1.Eclipse插件项目导出后,直接放到Eclipse安装目录下面的plugins目录下,重启就可以了。

                  2.如果打开后界面乱码,原因是Eclipse用Ant打包的,默认使用的系统编码GBK,可以想办法配置Ant使用UTF-8,最简单的办法是在  build.properties文件中加javacDefaultEncoding.. = UTF-8   就可以了。

  • 相关阅读:
    @+id/和android:id的区别
    android.intent.action.MAIN 与 android.intent.category.LAUNCHER 的验证理解
    jQuery对象与dom对象相互转换
    javascript中apply和eval结合的强大用法
    公司项目学习杂烩
    c#(winform,webform通用)利用npoi将xls文件复制为xlsx文件(excel的修改,保存,包括excel2003-office2007+的处理)
    uploadfiy使用
    我都学了些什么
    给编程一个你热爱它的机会
    野心不能成就你,热爱却可以
  • 原文地址:https://www.cnblogs.com/plumsq/p/8409524.html
Copyright © 2020-2023  润新知