扫码关注官方订阅号
都说ecipse还有netbeans就是java开发的,但是我发现所有介绍java的书籍都没介绍怎么生成windows下的安装包,我也因为这个问老师,它说java弄这个很困难,java主要是做网页的。就这样搪塞过去了,我还是不懂。现在我对windows下的桌面程序很感兴趣,哪位能告诉我制作的原理?
走同样的路,发现不同的人生
java做桌面程序的确很难,java的优势不在这里,建议你不要学现在有些跨平台的桌面程序其实都是网页比较流行的有nw.js、electronjava在这些程序中负责实现业务逻辑和提供Api
java是长处不在做桌面应用,如果想做桌面应用可以用 C#。或者前端学的不错的话,直接使用 electron 这个工具,直接打包成桌面应用。
Inno Setup
java是可以做桌面应用的。
但本身做成exe很麻烦,意味着你需要把jre和软件都打包成exe。这类的软件还是有的 exe4j j2exe之类的。
MC就是个例子,他本身就是java做的,结果虽然他是像素风游戏但是却很吃配置。而且还需要玩家自己装好java运行环境。MC之所以会用java做是因为它最初仅仅是一个无聊的java程序员自娱自乐的小程序。
java有制作客户端图形界面的api, 从旧到新 依次是 awt swing javaFX。此外还有一些第三方图形库, eclipse使用的是ibm自己的一套图形库swt,MC使用的是openGL的java调用库lwjGL。
java做这些是可以的,但是商业价值不大,所以没人去搞。 什么赚钱? 互联网&移动互联网。 so,java就主要适合做网页了。
Java是可以导出jar包的,是可以在安装有JRE的桌面环境运行的,具体jar包转化为exe 百度有详解,不过Java的确不适合桌面程序,可以用Java搞Android开发
不用转成exe,你要的其实就是双击可运行而已,那么如果有jre环境,可运行jar双击即可。那么如果要发布出去,不确定是不是有环境,那么把jre一起打包,这一个sh或者bat脚本实现启动
当然是可以写的,我用Swing和SWT(Eclipse的界面组件)都写过,Java写的桌面程序建议也不要打包成exe,丧失了Java的跨平台特性,在window平台下可以用winRun4j之类的启动器来启动,不仅简单易用,而且还绿色无污染,Windows以外的平台我只在MAC上整过,可惜run4j没有MAC版,我自己用C++写了一个MAC平台下的启动器,同一份程序在windows和mac两个平台下只要使用不同的启动器可以轻易移植,其跨平台特性还是有一定的吸引力。winRun4j和我自己写的mac版都可以使用系统的jre也可以将jre随程序一起发布。我自己使用Java写一些小工具,没做大型软件,不清楚具体性能表现如何,不过Java写的桌面程序有IntelliJ IDEA,Eclipse,NetBeans这类,不知道算不算够大,其表现还是可以的。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
java做桌面程序的确很难,java的优势不在这里,建议你不要学
现在有些跨平台的桌面程序其实都是网页
比较流行的有nw.js、electron
java在这些程序中负责实现业务逻辑和提供Api
java是长处不在做桌面应用,如果想做桌面应用可以用 C#。
或者前端学的不错的话,直接使用 electron 这个工具,直接打包成桌面应用。
Inno Setup
java是可以做桌面应用的。
但本身做成exe很麻烦,意味着你需要把jre和软件都打包成exe。这类的软件还是有的 exe4j j2exe之类的。
MC就是个例子,他本身就是java做的,结果虽然他是像素风游戏但是却很吃配置。
而且还需要玩家自己装好java运行环境。
MC之所以会用java做是因为它最初仅仅是一个无聊的java程序员自娱自乐的小程序。
java有制作客户端图形界面的api, 从旧到新 依次是 awt swing javaFX。
此外还有一些第三方图形库, eclipse使用的是ibm自己的一套图形库swt,MC使用的是openGL的java调用库lwjGL。
java做这些是可以的,但是商业价值不大,所以没人去搞。 什么赚钱? 互联网&移动互联网。 so,java就主要适合做网页了。
Java是可以导出jar包的,是可以在安装有JRE的桌面环境运行的,具体jar包转化为exe 百度有详解,不过Java的确不适合桌面程序,可以用Java搞Android开发
不用转成exe,你要的其实就是双击可运行而已,那么如果有jre环境,可运行jar双击即可。那么如果要发布出去,不确定是不是有环境,那么把jre一起打包,这一个sh或者bat脚本实现启动
当然是可以写的,我用Swing和SWT(Eclipse的界面组件)都写过,Java写的桌面程序建议也不要打包成exe,丧失了Java的跨平台特性,在window平台下可以用winRun4j之类的启动器来启动,不仅简单易用,而且还绿色无污染,Windows以外的平台我只在MAC上整过,可惜run4j没有MAC版,我自己用C++写了一个MAC平台下的启动器,同一份程序在windows和mac两个平台下只要使用不同的启动器可以轻易移植,其跨平台特性还是有一定的吸引力。winRun4j和我自己写的mac版都可以使用系统的jre也可以将jre随程序一起发布。我自己使用Java写一些小工具,没做大型软件,不清楚具体性能表现如何,不过Java写的桌面程序有IntelliJ IDEA,Eclipse,NetBeans这类,不知道算不算够大,其表现还是可以的。