`

java、javaw和javaws的区别

阅读更多

java、javaw和javaws的区别:

首先,所有的这些都是java的启动装置,java.exe经常使用,当使用命令行输出到window的时候,会有java.exe进程,通过任务管理器可以看到。通常 我们执行一些小的java程序的时候会有 java.exe进程在运行。javaw.exe对于我们也比较特殊,我们也能够通过任务管理器看到javaw.exe进程的运行。javaws通常web开启的时候的进程。

 

jvm.dll

jvm.dll是一个java虚拟机在windows平台环境上的实现,也是JRE的一部分,一个C程序能够使用jvm.dll直接运行在jvm上。

 

java.exe

java.exe是win32控制台应用,它提供了一种帮助,代替使用jvm.dll执行java  classes 文件,作为一个win32控制台应用,显然他是和一个控制台相关联,当执行java classes的时候,它运行。

 

javaw.exe

javaw.exe是相似的和java.exe  是一个win32的GUI应用,应用提供自己的GUI窗口,不启用控制台。

因此我们想运行一个GUI程序不需要命令控制台。

下面是一个例子:

 

  1. package javaw;  
  2.   
  3. import javax.swing.*;  
  4.   
  5. public class HelloWorldSwing {  
  6.     private static void createAndShowGUI() {  
  7.         JFrame jFrame = new JFrame("HelloWorld Swing");  
  8.         jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
  9.         JLabel helloLabel = new JLabel("Hello World!");  
  10.         jFrame.getContentPane().add(helloLabel);  
  11.         jFrame.pack();  
  12.         jFrame.setVisible(true);  
  13.     }  
  14.    
  15.     public static void main(String[] args) {  
  16.         javax.swing.SwingUtilities.invokeLater(new Runnable() {  
  17.             public void run() {  
  18.                 createAndShowGUI();  
  19.             }  
  20.         });  
  21.     }  
  22. }  


上面是一个GUI程序,按照如下方式运行就是在控制台上运行:

 

java -classpath . javaw.HelloWorldSwing

 解释:其中 -classpath .  代表把classpath 的路径设置为当前目录。

运行后查看任务管理器出现了 java.exe进程   ------ 因为这是通过控制台运行的。

图如下:



 

如果在eclipse中直接运行:运行后 查看任务管理器出现 javaw.exe进程  --因为没有通过控制台输出运行。

图如下:

 

 

如果用javaw通过命令行运行也是如上图所示:

 

注: javaw -classpath . javaw.HelloWorldSwing  启动的进程为javaw.exe

       java -classpath . javaw.HelloWorldSwing  启动的进程为java.exe

java.exe  和 javaw.exe两种运行方式的区别还有一点  java运行GUI以后堵塞在那里直到窗口关闭。

javaw运行GUI后 直接就可以进行下一条命令的运行了。

 

javaws.exe

javaws.exe进程适用于启动通过web 配置的程序,简而言之就是在web应用程序中应用。

总结:

java.exe用于启动window console  控制台程序

javaw.exe用于启动 GUI程序

javaws.exe用于web程序。

jvm.dll就是java虚拟机规范在windows平台上的一种实现

 

注:原文地址:http://javapapers.com/core-java/java-vs-javaw-vs-javaws/

http://blog.csdn.net/topwqp/article/details/8595936

分享到:
评论

相关推荐

    java和 javaw 及 javaws的区别解析

    "java和 javaw 及 javaws的区别解析" java和 javaw 及 javaws都是java虚拟机(JVM)的启动装置,但是它们之间存在一些关键的区别。java.exe是一个Win32控制台应用,提供了一种帮助,代替使用jvm.dll执行java ...

    Windows下java、javaw、javaws以及jvm.dll等进程的区别

    在Windows操作系统中,Java开发和运行涉及多个进程和组件,其中`java.exe`、`javaw.exe`、`javaws.exe`以及`jvm.dll`各自扮演着不同的角色。了解这些区别有助于更好地管理和优化Java应用程序的运行。 1. **java.exe...

    JAVA命令大全.pdf

    3. javaw.exe:与java类似,但它用于运行应用程序,不提供命令行窗口,适用于图形用户界面(GUI)应用程序。 4. javah:用于生成C语言头文件和源文件,这些文件可以用来编写本地方法,即用C或C++实现的Java方法。这在...

    官方下载jdk-8u261-linux-x64.tar.gz.zip

    7. **Java应用启动器**(java、javaw和javaws):用于启动Java应用程序,javaw没有控制台窗口,javaws用于启动Java Web Start应用程序。 8. **其他工具**:如Applet Viewer、Keytool、Jarsigner、PolicyTool等,...

    java_portable.rar

    2. `bin` 目录:包含可执行文件,如`java.exe`、`javaw.exe`和`javaws.exe`,分别用于命令行执行Java程序、无窗口执行和Web启动应用。 3. `lib` 目录:存储Java类库,这些库为Java程序提供了各种功能,如集合框架、...

    最新版linux jdk-11.0.16_linux-x64_bin.tar.gz

    6. **Java应用启动器(java、javaw、javaws等)**:这些命令行工具用于启动Java应用程序。 7. **其他工具**:如jar工具用于打包和管理类文件,jlink用于创建定制的运行时图像,jpackage用于创建可安装的应用程序包...

    官网原版jdk1.6.0_45(linux)

    7. **Java应用启动器(java、javaw、javaws等)**:这些是用于启动Java应用程序的不同命令行工具。 8. **开发工具和库**:包括如`jconsole`(JMX控制台)、`jmap`(内存映射工具)、`jhat`(堆转储分析工具)以及...

    精简版的jre6,绝对能支持桌面swing程序。

    "bin"目录通常包含了Java运行时环境的可执行文件,如java、javaw和javaws等,这些都是运行Java应用程序的关键组件。在这个精简版中,这些文件经过了精心挑选,确保能够支持Swing程序的执行。 "lib"目录则包含了Java...

    java命令详解 高手进阶

    本文将详细介绍`java.exe`、`javac.exe`、`javaw.exe`、`javah.exe`、`javap.exe`、`jdb.exe`及`javaws.exe`等命令的功能及其高级用法,旨在帮助开发者更加熟练地运用这些工具。 #### 1. `java.exe` **简介**:`...

    jre_1.7.0_x64

    Java运行环境(JRE,Java Runtime Environment)是Java应用程序运行的基础,它包含了Java虚拟机(JVM,Java Virtual Machine)和Java核心类库。标题"jre_1.7.0_x64"指的是适用于64位操作系统的Java运行环境1.7.0版本...

    jdk1.8.zip

    6. **java**和**javaws**:Java应用程序和Web服务的启动器。 7. **appletviewer**:用于本地测试Java小应用程序的工具。 8. **jdb**:Java调试器,用于定位和修复代码中的错误。 JDK 1.8引入了许多重要的新特性,...

    jre_windows_x86.zip

    5. "bin"目录是最重要的,它包含了一系列可执行文件,如`java.exe`、`javaw.exe`和`javaws.exe`,这些都是运行Java应用程序的关键命令行工具。 总结来说,"jre_windows_x86.zip"提供了JDK 11的32位Windows版JRE,...

    win10 jdk1.7和1.8共存配置

    - 删除`C:\ProgramData\Oracle\Java\javapath`目录下的`java.exe`、`javaw.exe`、`javaws.exe`三个文件。 ### 五、修改注册表信息 #### 1. 备份注册表 在进行任何修改前,请先备份注册表,以防万一。 - 运行...

    jre-8u112-windows.exe

    在Windows环境下,JRE通常会自动配置系统路径,使得Java可执行文件(如`java.exe`、`javaw.exe`和`javaws.exe`)可以在命令行中直接调用。此外,JRE还会提供Java插件,使得浏览器能够运行基于Java的Web应用。然而,...

    jdk-6u26-windows-i586安装后jdk中jre文件

    1. **bin**:这个目录包含了运行Java应用程序所需的可执行文件,如`java.exe`(启动Java应用程序)、`javaw.exe`(无控制台的Java应用程序)和`javaws.exe`(Java Web Start)。 2. **conf**:存放配置文件,例如`...

    jre-6u45-windows-x64

    1. bin目录:包含Java可执行文件,如`java.exe`(Java命令行解释器),`javaw.exe`(无控制台的Java执行环境)以及`javaws.exe`(Java Web Start)等。 2. conf目录:存放配置文件,如`java.security`(安全策略文件...

    JDK命令大全新手的宝典

    **说明:** `javaws.exe` 是Java Web Start 的一部分,用于启动和管理通过网络下载的Java应用程序。它可以自动处理应用程序的安装、更新和安全设置,使得用户能够轻松地运行网络上的Java应用。 #### 八、jconsole....

    精简JRE第一步 — 精简bin目录

    `bin`目录是JRE的核心部分,包含了运行Java程序所需的可执行文件,如`java.exe`、`javaw.exe`、`javaws.exe`等。这些文件用于启动Java虚拟机(JVM)、管理类加载以及执行Java Web Start应用程序。此外,`bin`目录下...

Global site tag (gtag.js) - Google Analytics