目录1. 前言
2. 尝试的方法2.1. Smart Tomcat插件
3. 可行方法3.1. 说明3.2. 依赖环境3.3. IDEA中执行Gradle脚本3.3.1. 在Terminal中执行3.3.2. 在Run/Debug Configurations中执行3.3.2.1. 解决在Run/Debug Configurations中执行Gradle脚本中文乱码问题3.4. 在IDEA中进行远程调试3.4.1. 在IDEA创建远程调试配置并获取调试参数3.4.2. 增加调试参数后启动被调试Java进程3.4.3. 在IDEA启动调试3.5. runTomcat.gradle脚本使用方法3.5.1. 任务及参数说明3.5.1.1. 环境变量3.5.1.2. JVM参数3.5.2. 环境配置3.5.3. 使用场景3.5.3.1. 正常启动Tomcat进程3.5.3.2. 使用Tomcat实例启动脚本启动Tomcat进程3.5.3.3. 停止Tomcat进程3.5.3.3.1. 直接关闭Tomcat窗口(应用实例无法接收到Web容器销毁通知)3.5.3.3.2. 使用Tomcat实例停止脚本停止Tomcat进程(应用实例可以接收到Web容器销毁通知)3.5.3.4. 调试Web应用3.5.3.4.1. 进程启动后调试3.5.3.4.2. 从进程启动开始调试(操作两次)3.5.3.4.3. 从进程启动开始调试(一键完成)3.5.3.4.4. 调试Tomcat的类3.6. 其他说明3.7. 原理说明3.7.1. 生成Web应用所需文件3.7.2. 生成Tomcat实例3.7.3. 处理Tomcat上下文描述符文件3.7.4. 生成Tomcat实例启动/停止脚本3.7.5. 启动Tomcat3.7.6. 调试Web应用

1. 前言

IntelliJ IDEA Community Edition(社区版)不支持Tomcat,不想花钱购买Ultimate版本,也不想使用Eclipse,尝试通过其他方式使IDEA社区版支持Tomcat。

2. 尝试的方法

2.1. Smart Tomcat插件

在IDEA社区版(2019.2.4)中安装了Smart Tomcat插件,并使用其启动Tomcat应用,遇到了以下问题:

  • Web应用的class文件未被自动拷贝到对应的Web应用根目录中,导致Web应用的代码未被加载,需要手工处理,使用不方便;
  • Tomcat日志只生成了localhost_access_log.txt日志文件,没有生成catalina.log、localhost.log等日志文件,排查问题不方便。

使用Smart Tomcat插件遇到问题之后,放弃了使用该插件,没有再去分析是否因为使用方法不当。

3. 可行方法

3.1. 说明

之后通过Gradle脚本,使IDEA社区版支持Tomcat(也支持IDEA Ultimate版)。

完成的Gradle脚本及示例Web工程代码可以从 https://github.com/Adrninistrator/IDEA-IC-Tomcat/ 、 https://gitee.com/adrninistrator/IDEA-IC-Tomcat/ 下载,脚本内容很短,有效行数不超过200行,处理也很简单。

通过上述Gradle脚本,结合IDEA的功能,在完成配置后,可以实现以下功能,能够达到与Eclipse或IDEA Ultimate版本对Tomcat支持的功能接近的效果。

  • 一键启动Tomcat并加载Web应用
  • 一键停止Tomcat(应用实例可以接收到Web容器销毁通知)
  • 一键启动可调试的Tomcat(Web应用)
  • 一键从Tomcat(Web应用)启动时开始调试

3.2. 依赖环境

  • IDEA

使用IntelliJ IDEA Community Edition 2019.2.4版本。

  • Tomcat

支持Tomcat 7、8、9版本(测试过Tomcat 7.0.55、7.0.79、8.5.20、9.0.30版本),理论上也支持Tomcat 5、6版本(未测试)。

  • Gradle

支持Gradle 4、5、6版本(测试过Gradle 4.1、4.7、5.6.4、6.0.1版本)。

  • JDK

使用JDK 1.8.0_144版本。

  • 操作系统

使用Windows 7 x64 SP1版本。

3.3. IDEA中执行Gradle脚本

假设存在以下Gradle任务:

task testTask {doFirst {println "测试-" + System.getProperty("arg")}
}

3.3.1. 在Terminal中执行

在IDEA的Terminal中执行以上Gradle任务时,可以通过gradle或gradlew命令,以命令行的方式执行,并可以通过“-D”前缀指定传递给Gradle脚本的JVM参数,与执行Java程序时类似。

执行上述任务的Gradle命令示例如下所示:

gradle testTask -Darg=abc
gradlew testTask -Darg=abc

执行的结果如下所示:

> Task :testTask
测试-abc

3.3.2. 在Run/Debug Configurations中执行

打开IDEA的“Run/Debug Configurations”窗口,点击加号后,从弹出菜单中选择“Gradle”,可以新增一个配置,用于执行对应的Gradle任务。

在这里插入图片描述

打开“Configuration”标签页,对参数进行修改。

  • 点击“Gradle project”右侧的图标,选择当前项目;

  • 在“Tasks”右侧填入需要执行的Gradle任务名称,如“testTask”;

  • 在“VM options”右侧填入需要传递给Gradle脚本的JVM参数,如“-Darg=test_arg”,点击箭头图标可以展开编辑框。

在这里插入图片描述

在Run/Debug Configurations中完成配置后,可以选中对应的配置,点击执行按钮开始执行。

在这里插入图片描述
执行的结果在“Run”窗口中显示,如下所示:

在这里插入图片描述

当需要修改Run/Debug Configurations使用的Gradle时,可以打开IDEA的“File | Settings | Build, Execution, Deployment | Build Tools | Gradle”菜单,修改“Use Gradle from”选项。

在这里插入图片描述

3.3.2.1. 解决在Run/Debug Configurations中执行Gradle脚本中文乱码问题

在Run/Debug Configurations中执行Gradle脚本或编译过程时,输出的中文可能乱码。

在这里插入图片描述

或如下图所示:

在这里插入图片描述

进行以下设置,可以解决上述中文乱码问题。

  • 打开IDEA的“Help”“Edit Custom VM Options…”菜单;

在这里插入图片描述

  • 在打开的文件最后增加“-Dfile.encoding=UTF-8”;

在这里插入图片描述

  • 重启已打开的IDEA后生效。

3.4. 在IDEA中进行远程调试

3.4.1. 在IDEA创建远程调试配置并获取调试参数

打开IDEA的“Run/Debug Configurations”窗口,点击加号后,从弹出菜单中选择“Remote”,可以新增一个配置,用于进行远程调试。

在这里插入图片描述

打开“Configuration”标签页,对参数进行修改。

  • “Debugger mode”选项保持“Attach to remote JVM”
  • “Transport”选项保持“Socket”
  • “Host”参数保持“localhost”
  • “Port”参数指定被调试的Java进程监听的调试端口
  • “Use module classpath”选择被调试的Java进程对应的源代码模块

在这里插入图片描述

“Command line arguments for remote JVM”展示的调试参数不能编辑,会跟随上方的参数变化。

  • “Transport”选项“Socket”对应调试参数“transport=dt_socket”
  • “Port”参数对应调试参数“address=”

3.4.2. 增加调试参数后启动被调试Java进程

复制“Command line arguments for remote JVM”对应的调试参数,将其添加到被调试Java进程的JVM参数中,启动Java进程。

需要注意,IDEA调试配置中的Port参数,与被调试Java进程使用的调试参数中的address参数值需要相同,即调试器连接的端口需要与被调试Java进程监听的端口一致。

3.4.3. 在IDEA启动调试

选中对应的远程调试配置,点击调试按钮开始调试,与使用IDEA启动Java进程并调试类似。

在这里插入图片描述

调试启动成功后,在“Debug”“Console”窗口提示“Connected to the target VM”,如下所示。

在这里插入图片描述

点击停止按钮可以停止调试,IDEA的“Debug”窗口会出现类似“Disconnected from the target VM, address: ‘localhost:5555’, transport: ‘socket’”的提示。

在这里插入图片描述

停止被调试Java进程时,IDEA启动的调试会自动结束。

停止调试后,不会使被调试的Java进程退出。

当对Tomcat进行调试时,停止调试后在Tomcat窗口会出现类似“Listening for transport dt_socket at address: 5555”提示。

以上调试方法也支持非Web应用,以及远程的Java进程。

3.5. runTomcat.gradle脚本使用方法

将runTomcat.gradle脚本拷贝至Java Web应用工程中,在build.gradle脚本中添加“apply from: ‘runTomcat.gradle’”。

3.5.1. 任务及参数说明

runTomcat.gradle脚本中提供了名称为“startTomcat”的任务,用于启动Tomcat并加载Web应用。

在脚本中使用了以下参数。

3.5.1.1. 环境变量

  • TOMCAT_HOME_4IDEA
环境变量名称 TOMCAT_HOME_4IDEA
作用 指定需要使用的Tomcat的安装目录
示例 C:\program\apache-tomcat-7.0.79
必须设置
说明 使用Tomcat解压后的目录
  • TOMCAT_INSTANCE_4IDEA
环境变量名称 TOMCAT_INSTANCE_4IDEA
作用 指定保存各应用对应的Tomcat实例的目录
示例 D:\tomcat-test
必须设置
说明 默认使用当前用户目录的“.tomcat_idea”目录。例如为“C:\Users\user.tomcat_idea”目录,在该目录中保存了各应用对应的Tomcat实例,各实例分别对应其中的一个目录

3.5.1.2. JVM参数

  • appName
JVM参数名称 appName
作用 指定当前应用对应的Tomcat实例的名称
示例 app_test
必须设置
  • noBuild
JVM参数名称 noBuild
作用 指定跳过Web应用的编译过程
示例 1
必须设置
说明 当为非空时,会跳过;不指定或为空时,不会跳过
  • contextPath
JVM参数名称 contextPath
作用 指定当前Web应用的上下文路径
示例 context_test
必须设置
说明 默认使用appName参数值
  • arg4Tomcat
JVM参数名称 arg4Tomcat
作用 启动Tomcat时使用的JVM参数
示例 “-DtestValue=aaabbbccc -Dlog.home=E:\desktop\log-test -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5555”
必须设置
说明 需要使用半角双引号包含全部的参数,否则会被空格截断。可以指定jdwp调试参数

3.5.2. 环境配置

在使用提供的Gradle脚本runTomcat.gradle时,首先需要完成环境配置,“TOMCAT_HOME_4IDEA”环境变量配置需要增加,“TOMCAT_INSTANCE_4IDEA”环境变量的配置可选。

在完成环境变量配置后,需要重启已打开的IDEA后生效。

为了验证环境变量配置是否已生效,可在IDEA的Terminal中执行“echo %TOMCAT_HOME_4IDEA%”,当配置完成时会输出对应的环境变量值,未配置或未生效时会输出“%TOMCAT_HOME_4IDEA%”。

3.5.3. 使用场景

3.5.3.1. 正常启动Tomcat进程

正常启动Tomcat进程,加载示例工程中的Web应用的Gradle命令如下所示:

gradlew startTomcat -DappName=test-tomcat -Darg4Tomcat="-DtestValue=aaabbbccc -Dlog.home=E:\desktop\log-test"

在以上示例中,指定当前应用对应的Tomcat实例的名称,以及Web应用的上下文路径,均为“test-tomcat”,指定启动Tomcat时使用的JVM参数为“"-DtestValue=aaabbbccc -Dlog.home=E:\desktop\log-test"”。

第一次执行上述Gradle命令时(或删除了当前应用对应的Tomcat实例的目录后),Gradle脚本输出的结果如下所示:

> Configure project :
noBuild参数值: null> Task :clean
> Task :compileJava
> Task :processResources
> Task :classes> Task :startTomcat
appName参数值: test-tomcat
contextPath参数值: test-tomcat
arg4Tomcat参数值: -DtestValue=aaabbbccc -Dlog.home=E:\desktop\log-test
tomcatDir参数值: C:\program\apache-tomcat-7.0.55
instanceDir参数值: C:\Users\user\.tomcat_idea
当前路径: E:\IDEA-IC-Tomcat
当前应用使用的Tomcat实例目录: C:\Users\user\.tomcat_idea\test-tomcat
生成Web应用所需文件
生成Web应用所需文件-完成
判断是否需要创建Tomcat实例
创建Tomcat实例
文件不存在: C:\Users\user\.tomcat_idea\test-tomcat\conf\Catalina\localhost\test-tomcat.xml
写入文件: C:\Users\user\.tomcat_idea\test-tomcat\conf\Catalina\localhost\test-tomcat.xml
生成bat停止脚本文件: C:\Users\user\.tomcat_idea\test-tomcat\test-tomcat-stop.bat
文件不存在: C:\Users\user\.tomcat_idea\test-tomcat\test-tomcat-stop.bat
写入文件: C:\Users\user\.tomcat_idea\test-tomcat\test-tomcat-stop.bat
生成bat启动脚本文件: C:\Users\user\.tomcat_idea\test-tomcat\test-tomcat-start.bat
文件不存在: C:\Users\user\.tomcat_idea\test-tomcat\test-tomcat-start.bat
写入文件: C:\Users\user\.tomcat_idea\test-tomcat\test-tomcat-start.bat

当以上Gradle脚本执行成功后,会启动Tomcat,Tomcat进程会产生单独的命令行窗口。

在这里插入图片描述

使用浏览器访问示例工程的Controller,URL为“ http://localhost:8080/test-tomcat/testrest/get ”,输出结果为当前时间戳及“testValue”对应的JVM参数值,访问结果如下所示:

在这里插入图片描述

3.5.3.2. 使用Tomcat实例启动脚本启动Tomcat进程

runTomcat.gradle脚本的“startTomcat”任务执行时,会在当前Web应用对应的Tomcat实例目录生成启动脚本,如前文输出的示例“C:\Users\user\.tomcat_idea\test-tomcat\test-tomcat-start.bat”。

当不需要对Web应用重新编译时,可以直接执行上述启动脚本,启动Tomcat进程,加载Web应用。

3.5.3.3. 停止Tomcat进程

在示例工程中,TestPostConstructLazyFalse.preDestroy()方法使用了@PreDestroy注解,该方法会在应用停止阶段执行,会在当前目录生成名称为“preDestroy-”及当前时间戳的目录。

3.5.3.3.1. 直接关闭Tomcat窗口(应用实例无法接收到Web容器销毁通知)

将Tomcat窗口关闭,可以停止Tomcat进程。

通过该方法停止Tomcat进程,会使Tomcat进程直接结束,应用实例无法接收到Web容器销毁通知,示例工程的TestPostConstructLazyFalse.preDestroy()方法不会执行,当前目录不会生成目录。

3.5.3.3.2. 使用Tomcat实例停止脚本停止Tomcat进程(应用实例可以接收到Web容器销毁通知)

runTomcat.gradle脚本的“startTomcat”任务执行时,会在当前Web应用对应的Tomcat实例目录生成停止脚本,如前文输出的示例“C:\Users\user\.tomcat_idea\test-tomcat\test-tomcat-stop.bat”。

执行上述停止脚本,会执行Tomcat提供的stop命令,可以停止Tomcat进程,应用实例可以接收到Web容器销毁通知,示例工程的TestPostConstructLazyFalse.preDestroy()方法会执行,当前目录会生成目录,如下所示。

在这里插入图片描述

3.5.3.4. 调试Web应用

以下在IDEA创建远程调试配置并获取调试参数的过程,可以参考前文对应内容。

3.5.3.4.1. 进程启动后调试
  • 启动Tomcat进程

获取到调试参数如下所示:

-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5555

在执行Gradle “startTomcat”任务时,添加以上参数至arg4Tomcat参数中(可添加到IDEA的“Run/Debug Configurations”的Gradle配置中),如下所示:

gradlew -DappName=test-tomcat
-Darg4Tomcat="-DtestValue=aaabbbccc -Dlog.home=E:\desktop\log-test -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5555"

执行以上Gradle命令后,启动Tomcat进程。

  • 启动IDEA调试

之后可以在IDEA中启动调试。

对URI“/testrest/get”对应的TestRestController.get()方法设置断点,通过浏览器访问后,IDEA调试器进入断点,可在“Debug”“Debugger”窗口查看。

在这里插入图片描述

3.5.3.4.2. 从进程启动开始调试(操作两次)

以上使用的调试参数中的suspend参数值为“n”,被调试的进程在启动时不会暂停线程,会正常启动。只支持先启动被调试进程,再进行调试。

当需要从进程启动开始调试时,需要将调试参数中的suspend参数值设为“y”,被调试的进程在启动时会暂停线程,等待调试器连接address指定的端口后,才会继续启动。

  • 启动Tomcat进程

当需要从进程启动开始调试时,调试参数示例如下。

-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5555

将Gradle任务“startTomcat”的“arg4Tomcat”参数中配置的“suspend”参数设置为“y”,再通过该命令启动Tomcat,Tomcat窗口只显示“Listening for transport dt_socket at address: 5555”,未显示其他内容,即Tomcat进程此时在等待调试器连接address参数对应的端口,未完成启动。

在这里插入图片描述

  • 启动IDEA调试

在Web应用初始化阶段会执行的代码设置断点,例如在示例工程的带有@PostConstruct注解的TestPostConstructLazyFalse.postConstruct()方法设置断点。

在IDEA启动调试,查看Tomcat窗口日志已更新,说明Tomcat进程已启动。

查看IDEA调试窗口,已进入以上设置的断点,证明可以从Web应用启动开始调试。

在这里插入图片描述

3.5.3.4.3. 从进程启动开始调试(一键完成)

以上从进程启动开始调试的操作需要先启动Tomcat进程,再启动IDEA调试,可以优化为一键完成。

打开IDEA的“Run/Debug Configurations”窗口,选择“Remote”配置,点击“Before launch: Activate tool window”下方的加号按钮,选择“Run Gradle task”。

在这里插入图片描述

弹出“Select Gradle Task”窗口,“Gradle project”“Tasks”“VM options”参数配置,可参考在IDEA添加Gradle配置,通过“startTomcat”任务启动Tomcat进程的步骤,需要确保“VM options”参数填写的“arg4Tomcat”参数中的调试参数“suspend”为“y”。

在这里插入图片描述

“Before launch: Activate tool window”下方的列表会出现配置的Gradle任务。

在这里插入图片描述

完成以上配置后,在启动IDEA调试之前,会执行指定的Gradle任务“startTomcat”,以“suspend=y”的调试参数启动Tomcat进程。可以实现一键从进程启动开始调试,与IDEA Ultimate版或Eclipse对Web应用从启动开始调试的效果类似。

3.5.3.4.4. 调试Tomcat的类

当需要对Tomcat的类进行调试时,需要将Tomcat的lib目录添加至IDEA的Web应用工程的依赖中,否则调试时无法查看Tomcat的类。

打开IDEA的“Project Structure”窗口,选择“Project Settings”“Modules”标签页,在打开的窗口中选择Web项目主模块,选择“Dependencies”标签页,点击加号按钮,选择“JARs or directories…”菜单。

在这里插入图片描述

在弹出的窗口,选择当前使用的Tomcat的安装目录的lib目录。

在这里插入图片描述

完成添加后,Tomcat的lib目录会出现在“Dependencies”标签页的最下方。

在这里插入图片描述

当刷新Gradle后,项目配置会重置,以上添加的依赖会被清理,需要重新添加。

完成以上配置后,在Tomcat的org.apache.catalina.startup.HostConfig$DeployDescriptor类run方法设置断点,从进程启动开始调试,可以在IDEA的Debug窗口看到已进入断点。该方法是Tomcat启动时执行的第一个Tomcat的类的方法。

在这里插入图片描述

3.6. 其他说明

  • 生成Web应用所需文件调整

runTomcat.gradle脚本中buildFiles4WebApp方法用于生成Web应用所需文件,拷贝的目录与文件可以根据实际情况调整。

  • 调试端口需要确保未被监听

被调试Java进程的调试参数中指定的adderss参数对应的调试端口,需要确保未被监听,否则被调试Java进程会启动失败,窗口会自动消失,Tomcat的提示如下。

在这里插入图片描述

  • 重新创建Tomcat实例

当因为需要修改使用的Tomcat版本,或其他原因,导致需要重新创建Web应用使用的Tomcat实例时,需要将对应的Tomcat实例目录删除,如“C:\Users\user.tomcat_idea\test-tomcat”,之后再执行Gradle的startTomcat任务。

  • Tomcat实例目录配置修改与日志查看

当前Web应用对应的Tomcat实例目录,在执行Gradle “startTomcat”任务时会输出,如“C:\Users\user.tomcat_idea\test-tomcat”。

当需要修改当前Web应用对应的Tomcat使用的HTTP服务端口、SSL配置、线程池数量等参数时,可以修改Tomcat实例目录的“conf\server.xml”文件,说明略。

当需要同时启动多个Tomcat进程分别加载不同的Web应用时,需要先修改对应Tomcat实例的“conf\server.xml”文件中的监听端口,避免不同的Tomcat实例使用同一个端口导致不可用。

Tomcat实例目录的“logs”目录保存了Tomcat日志文件,使用默认配置时,包括“catalina.log”“localhost.log”“localhost_access_log.txt”“host-manager.log”“manager.log”等。

3.7. 原理说明

通过runTomcat.gradle脚本启动Tomcat进程并加载Web应用,与Eclipse或IDEA Ultimate(2018.3及之前版本)的原理类似,如下所示。

3.7.1. 生成Web应用所需文件

当noBuild参数未指定或为空时,会先执行Gradle的classes任务完成编译,再执行buildFiles4WebApp方法,完成以下操作:

  • 将编译生成的class文件拷贝至“build/tomcat/WEB-INF/classes”目录中
  • 将“src/main/resources/”目录(配置文件)拷贝至“build/tomcat/WEB-INF/classes”目录中
  • 将“src/main/webapp/”目录(静态资源与WEB-INF/web.xml文件)拷贝至“build/tomcat”目录中
  • 将依赖的jar包拷贝至“build/tomcat/WEB-INF/lib”目录中

3.7.2. 生成Tomcat实例

判断当前应用使用的Tomcat实例目录是否已存在,若已存在时则不再处理。

当前应用使用的Tomcat实例目录不存在时,进行以下操作生成Tomcat实例:

  • 在“TOMCAT_INSTANCE_4IDEA”环境变量参数值对应的目录,或当前用户目录的“.tomcat_idea”目录中,创建当前Web应用使用的Tomcat实例目录,使用Gradle “startTomcat”任务执行时的“appName”参数值作为目录名称;
  • 将“TOMCAT_HOME_4IDEA”环境变量参数值指定的,需要使用的Tomcat安装目录的bin、conf目录拷贝至当前Web应用使用的Tomcat实例目录中;
  • 在当前Web应用使用的Tomcat实例目录创建logs、temp、work目录。

3.7.3. 处理Tomcat上下文描述符文件

上下文描述符是一个XML文件,其中包含与Tomcat相关的上下文配置,例如命名资源或会话管理器配置等。当Tomcat启动时,上下文描述符会被首先部署。可参考 https://tomcat.apache.org/tomcat-7.0-doc/deployer-howto.html 。

上下文描述符需要保存在当前Web应用使用的Tomcat实例目录的“conf\Catalina\localhost”目录中,当前Web应用的上下文路径与上下文描述符文件名相同(不含.xml后缀),上下文路径的大小写与文件名的大小写一致。

runTomcat.gradle脚本会检查当前Web应用对应的Tomcat实例的上下文描述符,若文件已存在且内容不需要修改,则不执行写入操作;若文件不存在或文件内容需要修改,则执行文件写入操作。

3.7.4. 生成Tomcat实例启动/停止脚本

Tomcat实例启动/停止脚本会保存在当前Web应用对应的Tomcat实例目录中。

runTomcat.gradle脚本会检查对应的脚本文件,在需要写入时进行写入操作。

在启动脚本中会调用Tomcat实例目录的“bin\startup.bat”脚本;在停止脚本中会调用Tomcat实例目录的“bin\shutdown.bat”脚本。

3.7.5. 启动Tomcat

runTomcat.gradle脚本会执行生成的Tomcat实例启动脚本,以启动Tomcat。

3.7.6. 调试Web应用

以上的远程调试使用了JDWP(Java Debug Wire Protocol),可参考 https://docs.oracle.com/javase/8/docs/technotes/guides/jpda/jdwp-spec.html ,JDWP是用于调试器与其调试的Java虚拟机之间的通信协议。

JPDA(The Java Platform Debugger Architecture)包含三个接口,供调试器在桌面系统的开发环境中使用。JDWP属于其中一个,JPDA的说明可参考 https://docs.oracle.com/javase/8/docs/technotes/guides/jpda/ 。

在JPDA连接和调用详细信息(https://docs.oracle.com/javase/8/docs/technotes/guides/jpda/conninv.html )中,说明当suspend参数为“y”时,VMStartEvent会使用SUSPEND_ALL作为暂停策略;当suspend参数为“n”时,VMStartEvent会使用SUSPEND_NONE作为暂停策略。

参考 https://docs.oracle.com/javase/8/docs/jdk/api/jpda/jdi/com/sun/jdi/event/VMStartEvent.html ,说明VMStartEvent是目标VM的初始化通知,在启动主线程之前和执行任何应用程序代码之前,会收到此事件。

参考 https://docs.oracle.com/javase/8/docs/jdk/api/jpda/jdi/com/sun/jdi/request/EventRequest.html ,说明SUSPEND_ALL在事件发生时会暂停全部线程;SUSPEND_NONE在事件发生时不会暂停线程。

根据以上说明可知,当Java进程的调试参数中的suspend参数为“y”时,在启动时会暂时全部线程;suspend参数为“n”时,在启动时不会暂时线程。
😕/docs.oracle.com/javase/8/docs/technotes/guides/jpda/conninv.html )中,说明当suspend参数为“y”时,VMStartEvent会使用SUSPEND_ALL作为暂停策略;当suspend参数为“n”时,VMStartEvent会使用SUSPEND_NONE作为暂停策略。

参考 https://docs.oracle.com/javase/8/docs/jdk/api/jpda/jdi/com/sun/jdi/event/VMStartEvent.html ,说明VMStartEvent是目标VM的初始化通知,在启动主线程之前和执行任何应用程序代码之前,会收到此事件。

参考 https://docs.oracle.com/javase/8/docs/jdk/api/jpda/jdi/com/sun/jdi/request/EventRequest.html ,说明SUSPEND_ALL在事件发生时会暂停全部线程;SUSPEND_NONE在事件发生时不会暂停线程。

根据以上说明可知,当Java进程的调试参数中的suspend参数为“y”时,在启动时会暂时全部线程;suspend参数为“n”时,在启动时不会暂时线程。

查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. 整理的一些Linux运维工程师面试题 工程师2019年度工作总结

    今年是我成为上班族以来的第二个整年。土建工程师是我从事的第一份工作,是我职业生涯的一个起点,我对此也十分珍惜,尽最大努力去适应这一岗位。通过一年来的不断学习,以及同事、领导的帮助,我已完全融入到了*******这个大家庭中,个人的工作技能也有了明显的提高,虽然工作…...

    2024/5/1 6:20:30
  2. 很多人见过并且用过爬虫,但极少人懂得这些爬虫概念!

    作为程序员,相信大家对“爬虫”这个词并不陌生,身边常常会有人提这个词,在不了解它的人眼中,会觉得这个技术很高端很神秘。不用着急,我们的爬虫系列就是带你去揭开它的神秘面纱,探寻它真实的面目。 爬虫是什么 网络爬虫(又被称为网页蜘蛛,网络机器人),是一种按照一定…...

    2024/5/1 10:54:09
  3. react-基础知识点完全版(未更新完)

    main.js // 基本配置 import React from react import ReactDOM from react-dom import App from ./App //用于将其他组件引入的主页面ReactDOM.render(<App />, document.getElementById(root)) //root在public的index.html页面中App.js // 基本配置 import React fro…...

    2024/4/29 7:42:10
  4. 这Python 的20个骚操作,让我月薪涨了3K!

    Python 是一个解释型语言,可读性与易用性让它越来越热门。在你的日常编码中,以下技巧可以给你带来意想不到的收获。字符串反转 下面的代码片段,使用 Python 中 slicing 操作,来实现字符串反转: 1# Reversing a string using slicing 2 3my_string = "ABCDE" 4re…...

    2024/4/1 11:48:58
  5. 2019_GDUT_新生专题 图论 B - 最短路

    题目在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt。但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候,却是非常累的!所以现在他们想要寻找最短的从商店到赛场的路线,你可以帮助他们吗? Input 输入包括多组数据。每组数据第一行是两个整数N、…...

    2024/4/26 21:22:53
  6. 微信域名防封跳转系统详解,域名总是被微信屏蔽应该这样做

    很多人问,微信域名防封跳转系统是怎么实现的,域名链接被微信拦截封杀,就是不能在微信环境中打开,需要通过点击右上角选择浏览器打开。 域名链接微信屏蔽,顾名思义,肯定是看不到了。 域名链接被微信封杀,那就是提示已停止访问该网页的字样。那是什么原因引起的域名链接被…...

    2024/3/29 12:59:44
  7. 介绍React.memo, useMemo 和 useCallback

    什么是 React.memo ? React.memo 和 React.PureComponent 类似, React.PureComponent 在类组件中使用,而React.memo 在函数组件中使用 看下面两个例子,有两个计数器组件,两个计数器的数据都来源于父组件,第一个计数器通过点击按钮数字会不断累加而发生改变,第二个计数器…...

    2024/3/29 12:59:43
  8. 【算法】数据结构

    ...

    2024/3/29 7:35:52
  9. 机房收费-----使子窗体显示父窗体的picture控件上

    多文档界面窗体(MDI窗体)中的父窗体没有办法添加控件,我们可以在父窗体中添加一个picture控件,然后将控件放在picture上。但是随之而来的问题就是MDI子窗体没有办法显示出来,被picture控件给挡住了,经过翻阅各种资料,发现的了一些信息以及解决办法。跟大家分享一下。首先…...

    2024/3/29 7:35:46
  10. HDU 3873 Invade the Mars

    题目链接 转载自https://www.cnblogs.com/wally/archive/2013/05/28/3103437.html(侵转删) 题目: Invade the Mars Time Limit: 5000/2000 MS (Java/Others) Memory Limit: 365768/165536 K (Java/Others) Total Submission(s): 3169 Accepted Submission(s): 902 Problem D…...

    2024/3/29 7:35:45
  11. 学习光线追踪(18)---镜面反射贴图

    0.简介前面我们实现的镜面反射都是统一的反射指数,但是对于有些材质就不适合有太强的反光效果,通过镜面反射纹理来实现不同部位的反射效果不同1.添加纹理这里和纹理的使用差不多,将原来的参数替换成图片,这里的图片应该是一张灰度图如下图。箱子的反射贴图这个是木箱子的反…...

    2024/3/29 7:35:44
  12. 【DBUtils数据库连接池多表连接查询】

    DBUtils数据库连接池多表连接查询 MapListHandler的使用(具体使用方式查看官方文档http://commons.apache.org/proper/commons-dbutils/apidocs/index.html) key——sql语句查询的字段 value——数据库中查询得到的结果 出现的问题描述 对于多表连接查询,如果使用BeanListHa…...

    2024/3/29 12:59:43
  13. String .toString() String.valueOf(Object)区别

    String .toString() String.valueOf(Object)区别(String)将object转成String类型的值。需要注意的是类型必须能转成String类型,(例如Integer类型就不行)否则抛出ClassCastException备注:null值可以强制转换为任何java类类型,(String)null是合法的.toString()java.lang.…...

    2024/3/29 12:59:41
  14. 蓝桥杯 基础练习 BASIC-6 杨辉三角形

    基础练习 杨辉三角形 1.问题描述 杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数。 它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加。 下面给出了杨辉三角形的前4行: 1 1 1 1 2 1 1 3 3 1 给出n,输出它的前n行。 输入格式 输入包含一个数n。…...

    2024/3/29 12:59:40
  15. 【C++】44.继承中的访问级别

    问题子类是否可以直接访问父类中的私有成员?面向对象理论根据C++语法example:class Parent { private:int mv; public:Parent(){mv = 100;}int value(){return mv;} };class Child : public Parent { public:int addValue(int v){mv = mv + v; // ???? 如何访问父类的非…...

    2024/3/29 12:59:40
  16. Java基础之类与对象知识点

    Java基础笔记之类与对象1、成员变量与局部变量的区别 成员变量是一个类对象中定义的属性,他会跟随new一个对象,进入内存的堆内存中。 局部变量是类的方法中定义的变量,他在方法调用之后,跟随方法进入内存的栈内存中。成员变量定义之后不进行赋值,系统也会默认赋值。int类型…...

    2024/4/5 21:20:01
  17. Python学习(六)

    魔法方法 在python中,有一些内置好的特定的方法,这些方法在进行特定的操作时会自动被调用,称之为魔法方法。 构造和析构 魔法方法总是被双下横线包围,例如__init__; 是面向对象的Python的一切; 他们总是能在适当的时候被调用。__init__(self[, …]) 相当于其他编程语言的…...

    2024/3/29 12:59:37
  18. 【SSL1624】小萨的烦恼【floyed最短路变式】

    Description 小萨将给出一张地图,它可以看做一个有N(N<=100)个结点的图。这张地图有N个公共汽车站,小萨只可以在这N个汽车站上公共汽车。有些车站之间存在一条双向通路,无论是公共汽车还是小萨,都只能走这些通路。若两个车站之间的距离为d,步行所需要的时间为2*d秒,…...

    2024/3/29 12:59:36
  19. WRPN: Wide Reduced-Precision Networks

    这篇文章的主要提升点在激活层的量化。从上图可以看出,当使用mini-batch时,随着batch数的提升,激活层所占据的内存也显著提升。 不同于drrefa-net的量化方式: wrpn采取了更简单的量化方式:文章用大量篇幅描述了作者所做的实验,但是对于wrpn的原理只是寥寥几句。所以我并不…...

    2024/3/29 12:59:35
  20. 简单排序

    备战蓝桥杯 算法菜鸟学习算法的第三天 今天遇到一道排序题,排序算法总是学一次忘一次,所以这次在此总结一下几种常见的简单排序算法。 冒泡排序:见名知意,就是存放无规律数的一个数组中不断将小的数浮到数组顶部,而将数字大的数沉到数组底部。 冒泡算法关键在于两层循环,…...

    2024/3/29 12:59:34

最新文章

  1. 事件处理模式--reactor原理与实现

    文章目录 reactorapicode reactor reactor是是服务器的重要模型, 是一种事件驱动的反应堆模式 通过epoll_create() 创建句柄, epoll_ctrl()提前注册好不同的事件处理函数 , 当事件到来就由 epoll_wait () 获取同时到来的多个事件&#xff0c;并且根据数据的不同类型将事件分发…...

    2024/5/1 17:46:29
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. C++ typeid运算符介绍

    在 C 中&#xff0c;typeid() 是一个运算符&#xff0c;用于获取表达式的类型信息。typeid() 运算符在 C 中是一个强大的工具&#xff0c;可以用于获取对象的类型信息、类型比较、多态类型判断、异常处理以及类型转换安全检查等场景中。 1. 类型比较&#xff1a; 可以使用 ty…...

    2024/5/1 3:39:06
  4. 蓝桥杯第十五届抱佛脚(十)贪心算法

    蓝桥杯第十五届抱佛脚&#xff08;十&#xff09;贪心算法 贪心算法基本概念 贪心算法是一种在算法设计中常用的方法&#xff0c;它在每一步选择中都采取在当前状态下最好或最优&#xff08;即最有利&#xff09;的选择&#xff0c;从而希望导致结果是最好或最优的算法。 贪…...

    2024/4/30 5:58:17
  5. jQuery(一)

    文章目录 1. 基本介绍2.原理示意图3.快速入门1.下载jQuery2.创建文件夹&#xff0c;放入jQuery3.引入jQuery4.代码实例 4.jQuery对象与DOM对象转换1.基本介绍2.dom对象转换JQuery对象3.JQuery对象转换dom对象4.jQuery对象获取数据获取value使用val&#xff08;&#xff09;获取…...

    2024/5/1 13:36:17
  6. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/5/1 17:30:59
  7. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/4/30 18:14:14
  8. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/4/29 2:29:43
  9. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/4/30 18:21:48
  10. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/4/27 17:58:04
  11. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/4/27 14:22:49
  12. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/4/28 1:28:33
  13. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/4/30 9:43:09
  14. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/4/27 17:59:30
  15. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/4/25 18:39:16
  16. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/4/28 1:34:08
  17. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/4/26 19:03:37
  18. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/4/29 20:46:55
  19. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/4/30 22:21:04
  20. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/5/1 4:32:01
  21. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/4/27 23:24:42
  22. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/4/28 5:48:52
  23. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/4/30 9:42:22
  24. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/4/30 9:43:22
  25. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/4/30 9:42:49
  26. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  27. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  28. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  29. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  30. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  31. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  32. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  33. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  34. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  35. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  36. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  37. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  38. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  39. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  40. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  41. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  42. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  43. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  44. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  45. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57