javaw java 区别_java和 javaw 及 javaws的区别解析

article/2025/9/19 18:40:27

java ,javaw 和 javaws 的区别:

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

42cac8ace68e89ee716d97b504aea486.png

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程序不需要命令控制台。

下面是一个例子:

package javaw;

import javax.swing.*;

public class HelloWorldSwing {

private static void createAndShowGUI() {

JFrame jFrame = new JFrame("HelloWorld Swing");

jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JLabel helloLabel = new JLabel("Hello World!");

jFrame.getContentPane().add(helloLabel);

jFrame.pack();

jFrame.setVisible(true);

}

public static void main(String[] args) {

javax.swing.SwingUtilities.invokeLater(new Runnable() {

public void run() {

createAndShowGUI();

}

});

}

}

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

java -classpath . javaw.HelloWorldSwing

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

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

图如下:

025402caaf0738f40e9d9c5de364059f.png

8da9ced67f6b6ed837ba73172e4b2dca.png

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

图如下:

4c9fcb517dd75b48609daa42bbbea50b.png

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

68f832121add0c6bfef94caba45accd2.png

注: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://chatgpt.dhexx.cn/article/i1ieV6yR.shtml

相关文章

mysql 命令行导入sql文件

1. 说明 有时候,使用navicat为MySQL导入sql文件时,会出现一些错误而导致数据无法导入成功,这时我们可以采用命令行的方式导入数据。以windows环境为例。 2. 步骤 a.数据表 b. 以命令行的方式登入mysql b.选择数据库进行导入 window…

SQL文件导入MySQL数据库

SQL文件导入MySQL数据库 1、MySQL设置环境变量 MYSQL_HOME:C:\Program Files (x86)\MySQL\MySQL Server 5.5 path:%MYSQL_HOME%bin 环境变量设置后,打开cmd命令窗口,输入mysql -u用户名 -p密码 登陆mysql 2、MySQL常用命令 source命令…

通过Navicate for MySQL导入SQL文件

场景:今天打算导入一个.sql 格式的外部数据文件,本来想通过在navicate界面打开.sql文件,运行将数据导入,但navicate一直出现卡段,推断该文件的数据量打开,软件打开非常吃力。 后面通过搜索,尝试…

MySQL中导入sql文件的步骤及常见问题(简单粗暴版)

1、新建数据库,字符集更改为utf8,点击确定。 2、右键点击新建的数据库,点击输入->SQL文件 3、找到相对应的sql文件,点击打开,最后刷新数据库。 常见问题:文件“xx.sql"的内容无法使用代码页936读取…

SQL——如何将sql文件导入mysql

1 创建新的数据库或存放在已有数据库,这里存放在已有数据库 2 使用已创建的数据库a 3 导入sql文件,输入“source sql文件的路径” (文件路径要将“ \ ”全部换成“ / ”) . 4 查看导入的数据表

Linux下的Mysql导入sql文件

使用: show databases;查看当前数据库 新建mmall数据库 create database mmall;查看是否新建成功 show databases;切换到mmall数据库 然后执行:其中/home/SQL/mmall.sql是我们要导入的对应的sql文件 source /home/SQL/mmall.sql执行:…

mysql文件怎么导入_mysql怎么导入sql文件

mysql导入sql文件的步骤:1、在【开始】界面中找到mysql,双击打开mysql软件,输入密码;2、创建一个数据库;3、输入“use 数据库名”,开始使用这个数据库;4、输入“source sql文件的路径”命令导入…

用Navicat for Mysql导入.sql文件

用Navicat for Mysql导入.sql文件 Navicat for MySQL里的导出连接、运行SQL文件、导入向导、还原备份、这些功能看起来好像都可以直接导入.sql文件。恰恰相反,其实导入.sql文件这功能在Navicat for Mysql里没有直接做成一个“功能”(没有实际按钮&#…

怎样将SQL文件导入MySQL

开发工具与关键技术:SQLserver,MySQL;数据库 撰写时间:2019-07-26 打开MySQL数据库在导航栏选中数据库选择创建数据库来创建一个新的数据库 自定义给数据库命名,命好名后点击【创建】即创建好一个新的数据库 在首选导航栏选中【…

Linux-Mysql导入sql文件

http://www.cnblogs.com/jiunadianshi/archive/2011/04/20/2022334.html 1.创建空数据库2.使用数据库并设置编码格式3.导入sql文件Linux数据库编码格式设置 查看字符编码 首先,将中文插入到数据库乱码是因为没有将数据库编码设置为支持中文的编码,mysql的…

linux mysql导入sql文件命令

如何用mysql命令行模式导入sql文件 linux mysql导入sql文件命令,首先要配系统变量,在我的电脑->属性->高级系统设置->环境变量->找到Path,加入你电脑上的mysql地址下的bin目录,如c:/wampp/mysql/bin:打开CMD输入以下命令(不需要转换目录)> mysql -u root -p…

【MySQL】如何导入SQL数据库

目录 如何导入SQL数据库【例子1-以Terminal终端命令行导入】【例子2-以SQLyog图形化软件导入】 如何导入SQL数据库 如何将现成的数据库导入到MySQL中?有两种方式: 通过终端命令行语句导入: mysql> source SQL文件的绝对路径通过MySQL的图…

如何将sql文件导入mysql

第一步:打在开始界面中找到mysql 第二步:双击打开mysql软件。,并输入密码。 第三步:如果sql文件的内容中有创建数据库的语句或者你想将表存放在你已有的数据库,在这里就不用创建数据库。 第四步:输入“show…

如何将.sql文件导入到mysql中

如何将.sql文件导入到mysql中 本人新手菜鸡,该文章仅为自己的学习问题记录,如有不足望大佬指正。 1.第一步:在windows开始界面找到mysql 2.第二步:双击打开mysql,并输入密码 3.第三步:创建数据库&…

MySQL导入sql文件

导入方法:不使用MySQL的command,要先用cmd切换到sql文件所在目录,再导入。如果数据库中没有要导入的数据库,要先创建此数据库再导入 步骤: 1.切换到所在目录 D: cd D:MYSQL2.打开Mysql mysql -uroot -p12we34rt3.检查数据库中是…

MySQL导入sql文件的三种方法

文章目录 一、使用工具Navicat for MySQL导入1.打开localhost_3306,选中右击“新建数据库”2.指定数据库名和字符集(可根据sql文件的字符集类型自行选择)3.选中数据库下的表运行SQL文件4.选中路径导入 二、使用官方工具MySQL Workbench导入1、第一种方法…

解决 scalac: bad option: ‘-make:transitive‘

scalac: bad option: ‘-make:transitive’ 打开项目所在位置并进入 .idea 修改scala_compiler.xml文件 删除掉参数行包含-make:transitive 保存后 重新运行代码

pom.xml中解决Provides transitive vulnerable dependency maven:org.yaml:snakeyaml:1.33警告

警告出现 构建springboot3项目时&#xff0c;pom文件的spring-boot-starter-web依赖部分整体高亮&#xff0c; 显示Provides transitive vulnerable dependency maven:org.yaml:snakeyaml:1.33 <dependency><groupId>org.springframework.boot</groupId>&l…

css3的过度,transition

transition 版本:CSS3 transitionCSS属性是 示例/* apply to 1 property */ /* property name | duration */ transition: margin-right 4s; /* property name | duration | delay */ transition: margin-right 4s 1s; /* property name | duration | timing function */ tran…

CSS transition

一&#xff0c;过渡属性 1.transition用于属性过渡&#xff0c;即属性值改变前后有过渡效果。 2.注意&#xff0c;过渡属于一定要定义过渡前的属性和过渡后的属性&#xff0c;若过渡前属性未明确定义则不会产生过渡效果&#xff0c;如下&#xff0c;若过渡前width没有直接定义…