文档章节

java、javaw和javaws的区别

乐在克里特
 乐在克里特
发布于 2017/02/23 13:47
字数 642
阅读 5
收藏 0

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

© 著作权归作者所有

共有 人打赏支持
乐在克里特
粉丝 16
博文 268
码字总数 394729
作品 0
杭州
程序员
私信 提问
IntelliJ IDEA 10.0 64位运行方法

IntelliJ IDEA 10.0 默认的快捷方式是以32位运行的.虽然性能上面感觉不出什么变化,但让人心里不很爽.IDEA是JAVA程序,如果我们直接从JAVA命令运行的话那就默认是64位了.还好,IDEA支持以命令调...

SeanCai
2010/12/19
0
1
java.exe,javac.exe,javaw.exe 是什么进程?

一般来说,gui程序使用的是javaw.exe。而控制台程序使用的是java.exe 百度百科内容: 1、java.exe: 运行java程序 2、javac.exe: 编译的,生成.class文件 3、javaw.exe: 跟java命令相对的,...

董广明
2014/02/27
0
0
在Ubuntu的系统下通过串口连接IOIO-OTG

一直在Windows环境中调试IOIO-OTG,今天开始尝试在Linux下通过串口连接IOIO-OTG,并运行HelloIOIO。 首先我们来认识一下JAVA: JAVA有2 2。准备工作: 下载甲骨文的Java JDK(JDK-7u17-LINU...

pc朵拉
2013/07/02
931
1
ubuntu12.10安装JDK6

安装了ubuntu12.10,折腾了一下,终于将JDK6安装成功了。以此记录一下。 1. 去官网下载JDK6,我下载后的保存路径为/home/kanner/下载/jdk-6u38-linux-i586.bin 2.在/usr/lib新建java目录:s...

陈佳庆
2013/01/20
0
3
Android环境搭建(二)-搭建Adnroid编译环境

搭建Android编译环境比较简单,主要分以下3部,对于我这种64bit的机器来说,搭建过程需要特别小心。 搭建前,需要sudo apt-get update一次。 1.安装JAVA环境 我选择的是jdk-6u33-linux-x64....

中华大吉
2012/08/24
0
2

没有更多内容

加载失败,请刷新页面

加载更多

撬动世界的支点——《引爆点》读书笔记2900字优秀范文

撬动世界的支点——《引爆点》读书笔记2900字优秀范文: 作者:挽弓如月。因为加入火种协会的读书活动,最近我连续阅读了两本论述流行的大作,格拉德威尔的《引爆点》和乔纳伯杰的《疯传》。...

原创小博客
19分钟前
0
0
《配电网自动化技术》第一章

写了配电网的组成、历程、难点、存在问题、解决方案,还是蛮好的。尤其是各地建设的系统后续又无法实用化,以及多种终端反而增加了运维工作量等,都是目前切实存在的让大家不停吐槽的内容。

max佩恩
24分钟前
0
0

中国龙-扬科
42分钟前
2
0
使用vuex的state状态对象的5种方式

vuex是一个专门为vue.js设计的状态管理模式,并且也可以使用devtools进行调试。 下面给大家来贴一下我的vuex的结构 下面是store文件夹下的state.js和index.js内容 //state.jsconst state =...

peakedness丶
45分钟前
2
0
NetCore MVC Demo

地址:http://114.116.9.72:5411

whltian
52分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部