首页编程java编程java为什么不能exe文件格式,(菜鸟提问)为何众多java编译器都没有生成EXE文件的功能

java为什么不能exe文件格式,(菜鸟提问)为何众多java编译器都没有生成EXE文件的功能

编程之家 2023-10-14 94次浏览

大家好,关于java为什么不能exe文件格式很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于(菜鸟提问)为何众多java编译器都没有生成EXE文件的功能的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!

java为什么不能exe文件格式,(菜鸟提问)为何众多java编译器都没有生成EXE文件的功能

java怎样编译成可执行程序exe

1.下载Fat Jar插件

2.安装之后,右键选择项目时,会出现Build Fat Jar,选择该方法,然后按照向导即可一步步导出可执行jar文件。

如果有外部的jar包,比如说sqljdbc.jar,则把所有要使用的第三方的jar包都复制到{Java_home}\jre\lib\ext目录下。(必须重新启动Eclipse才能加载这些jar包)而象SWT项目这样所使用的jar包,则不需要这么设置,直接在向导中选择所需要的jar包即可。

java为什么不能exe文件格式,(菜鸟提问)为何众多java编译器都没有生成EXE文件的功能

3.然后就可以在导出目录中运行这个可执行jar包,但如果是SWT项目,则必须在包含该可执行jar包的目录下有一个swt-win32-3235.dll之类的文件。

4.有了可执行的jar文件,然后可以使用exe4j.exe之类的jar转exe软件,如果使用exe4j.exe则当调用到sqljdbc.jar之类的外部包时,则必须将sqljdbc.jar也一并导入。安装向导就可以生成exe文件了,如果是SWT项目则也必须在同目录下有swt-win32-3235.dll之类的文件。

请问java代码可不可以生成exe文件

分类:电脑/网络>>程序设计>>其他编程语言

java为什么不能exe文件格式,(菜鸟提问)为何众多java编译器都没有生成EXE文件的功能

问题描述:

我是刚刚学Java,请问java代码可不可以生成exe文件,我用的是JCreator

解析:

可以,用JBuilder自带的工具可以转换成exe文件

不过所谓的exe可执行文件,执行的前提是必须机器上面安装了JVM(java虚拟机),就是说,不是任何一台机器都能跑java做的exe

换句话来说,JAVA是调用底层的C包,必须经过虚拟机的编译。也正是如此,JAVA具有跨平台性,换个角度来看,它的优势也是它的劣势

(菜鸟提问)为何众多java编译器都没有生成EXE文件的功能

java的要在jre下才能运行的,其实就是java虚拟机,是属于操作系统上面的另一个系统,没有jre java程序是没有办法编译和执行的。C和VB则是在操作系统上的一个开发平台而已。简单看就是java是 java->IDE开发工具->java虚拟机->操作系统;C和VB是C/VB->IDE开发工具->操作系统。java编译之后是.class的自解码文件,打包以后是.jar的文件,在windows里直接双击.jar文件和直接双击.exe效果是一样的,不过如果你编写的程序没有返回值,那对不起,程序不是一闪而过就是没有反应。

面向对象相对于面向结构的优势在于分析问题和处理问题的方式不一样,很多书里都会有,太长就不做陈述了,有兴趣自己搜索下。java的优势在于,跨平台性,同一个程序几乎不需要任何修改就可以在linux或是windows操作系统间移植,这一点是其他语言不能比拟的。其次,java编译完以后生成的自解码文件可以直接执行,这样就不像其他面向对象一样需要执行一次解释一次,所以一旦程序被编译那执行速度是很快的(还是没有C快,因为有java虚拟机),所以在做网络编程的时候java的优势是显而易见的,所以java做的桌面程序并不是很突出,在web上的成就却是其他语言不能比拟的(微软出了个.net和java虚拟机原理差不多)。而桌面编程主要还是C++的,C语言因为它接近硬件又便于学习和使用的特性往往用来编写操作系统。

java可以开发.exe程序吗比如 windows记事本程序

Windows桌面开发方面不是Java的主攻,Java程序要运行在安装了jdk环境的机器上,要是一定要转成exe文件,也不是不可以,但有点麻烦,而且文件比较大,因为会夹带着一个虚拟机里面,不过Java完全可以写一个像记事本那样的小程序,我现在就帮你写一个让你看看用Java写的记事本是怎样的:

/**

*简单记事本开发

*/

importjava.awt.*;

importjavax.annotation.processing.Filer;

importjavax.swing.*;

importjava.awt.Event;

importjava.awt.event.*;

importjava.io.*;

publicclassNotePadextendsJFrameimplementsActionListener{

JTextAreajta=null;

JScrollPanejsp=null;

JMenuBarjmb=null;

JMenujm1,jm2,jm3,jm4,jm5;

JMenuItemjmi1,jmi2,jmi3;

Stringstr="";

Stringpath="";

publicstaticvoidmain(String[]args){

NotePadnp=newNotePad();

}

publicNotePad(){

Stringstr="";

jta=newJTextArea();

jta.setFont(newFont("宋体",Font.BOLD,28));

jsp=newJScrollPane(jta);

jmb=newJMenuBar();

jm1=newJMenu("文件(o)");

jm2=newJMenu("编辑(E)");

jm3=newJMenu("格式(O)");

jm4=newJMenu("查看(V)");

jm5=newJMenu("帮助(H)");

jmi1=newJMenuItem("打开");

//jmi1.setMnemonic('o');

//添加快捷键

jmi1.setAccelerator(KeyStroke.getKeyStroke('O',java.awt.Event.CTRL_MASK));

jmi2=newJMenuItem("保存");

jmi3=newJMenuItem("退出");

jmi1.addActionListener(this);

jmi2.addActionListener(this);

jmi3.addActionListener(this);

jmb.add(jm1);

jmb.add(jm2);

jmb.add(jm3);

jmb.add(jm4);

jmb.add(jm5);

jm1.add(jmi1);

jm1.add(jmi2);

jm1.add(jmi3);

this.setJMenuBar(jmb);

this.add(jsp);

this.getContentPane().setVisible(true);

this.setTitle("新建文本文档");

this.setIconImage((newImageIcon("D://photos//SNC02103.JPG")).getImage());

this.setBounds(150,100,800,600);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setVisible(true);

}

publicvoidactionPerformed(ActionEvente){

if(e.getSource()==jmi1){

JFileChooserjfc=newJFileChooser("C:\\Users\\jie\\Desktop");

jfc.setDialogTitle("请选择您要打开的文件...");

jfc.showOpenDialog(null);

str=jfc.getSelectedFile().getName();

this.setTitle(str);

jfc.setVisible(true);

Stringfilename=null;

FileReaderfr=null;

BufferedReaderbr=null;

try{

filename=jfc.getSelectedFile().getAbsolutePath();

fr=newFileReader(filename);

br=newBufferedReader(fr);

Strings="";

Stringall="";

while((s=br.readLine())!=null){

all+=s+"\r\n";

}

jta.setText(all);

}catch(Exceptione2){

System.out.println("a");

e2.printStackTrace();

}finally{

try{

fr.close();

br.close();

}catch(Exceptione3){

e3.printStackTrace();

}

}

}

elseif(e.getSource()==jmi3){

System.exit(0);

}

}

publicvoidtemp(){

JFileChooserjfc2=newJFileChooser("C:\\Users\\jie\\Desktop");

jfc2.setDialogTitle("另存为...");

jfc2.showSaveDialog(null);

jfc2.setVisible(true);

path=jfc2.getSelectedFile().getAbsolutePath();

}

好了,文章到这里就结束啦,如果本次分享的java为什么不能exe文件格式和(菜鸟提问)为何众多java编译器都没有生成EXE文件的功能问题对您有所帮助,还望关注下本站哦!

java中 的对象是什么 什么是Java中的对象 小学生舞蹈不想长大 小学生舞蹈不想长大女生版