首页 > 代码库 > 公布Java桌面程序

公布Java桌面程序

我拿了一份桌面工具的开源码,修改动改,在elipse上执行。感觉良好。但到了公布应用程序,就傻眼了。

我竟然不知道咋公布!

呵呵,不愧是Java小白。

假设是微软阵营,直接就编译成exe了。

但java这里,假设要编译成EXE,还须要一个第三方工具,eclipse是没有的。

更何况,要编译exe,前提是要先将源码编译成jar包。

但是jar包又分为普通jar包和可执行jar包,要选哪一个?而且这份源码有点庞大,它本身又引用了很多jar包。

这份源码使用了 ant 和 lvy,我到如今都搞不懂它们是干嘛的。ant,lvy应该是像nuget那样的,帮助下载依赖包的,但是否也有帮助公布的作用,比方ant dist什么的,就不得而知了。

网上寻寻觅觅,没有头绪,后来问同事,才知道一个点答案。

有人说,java不适合自学。今日信焉。

方法是酱紫的:

1、eclipse下。右击该项目,选export,弹出对话框中,选Java,然后选Runnable JAR file

2、
技术分享

1)能够选将全部依赖包都编译进可执行包里,但也能够选3)与可执行包放在同一个文件夹。第2个不知啥意思。我选了第3个

然后下一步,就可以。这时会有一个警告,无论它。

到最后,生成的文件是这种:
技术分享

kettle52_lib:依赖的包
kettle52.jar:公布的可执行包
ui:是一些资源文件。不是生成的。我手动拷过来的
spoon.bat:我手动写的。里面代码仅仅是这么一句:

java -jar kettle52.jar

当然直接双击kettle52.jar也是能够执行的。搞个批处理文件仅仅是方便而已。

<script type="text/javascript"> $(function () { $(‘pre.prettyprint code‘).each(function () { var lines = $(this).text().split(‘\n‘).length; var $numbering = $(‘
    ‘).addClass(‘pre-numbering‘).hide(); $(this).addClass(‘has-numbering‘).parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($(‘
  • ‘).text(i)); }; $numbering.fadeIn(1700); }); }); </script>

公布Java桌面程序