java如何运行jar包 springboot打包的可执行jar 是运行在什么容器?
springboot打包的可执行jar 是运行在什么容器?
springboot打包的可执行jar在其内置的tomcat容器中运行,因此可以作为jar包启动,直接在互联网应用服务器上运行。springboot框架将tomcat的所有jar包都放在框架内部,由内部类直接调用,所以给程序员开发后的坐测带来了很多方便。
我把JAR文件解压了,怎么再把它还原成JAR文件呀?
一个普通的jar包有两个目录,一个是M
jvm:java代码是如何运行的?
一、Java代码运行流程a .基本流程
一个Java项目包含许多带有 amp后缀的源代码文件。java和。除了在IDE中调试之外,一般来说都是将代码打成jar包或者war包,最后将打包好的jar包或者war包发送到线上服务器进行部署。
部署的有很多种,最基本的一种是通过Tomcat容器进行部署,也可以通过java命令手动运行jar包中的代码。
b、编译
上述过程中有一个关键点 "编译与编辑。
在java代码打包过程中,源代码一般被编译成一个后缀为 "。阶级和阶级。JVM只能识别和解释字节码文件类。
C.JVM进程
对于编译后的类字节码,需要使用java -jar等命令来运行编写的代码;一旦使用了java命令,JVM进程实际上将在此时启动。
JVM进程将负责运行这些类字节码文件,相当于运行我们写的代码。
d、类加载
为了运行这些类字节码文件中的代码,JVM将使用类加载器将编译后的类字节码文件加载到JVM内存中。
E.解释和实施
最后,JVM将基于它自己的字节码执行引擎执行加载到内存中的类。当JVM需要一个类时,它将使用类加载器来加载相应的类。
从虚拟机的角度来看,要执行java代码,需要先将从中编译出来的类文件加载到java虚拟机中。加载的java类将存储在方法区域。在实际操作中,虚拟机执行方法区域的代码。
在运行过程中,每当一个调用进入一个java方法,java虚拟机就会在当前线程的java方法堆栈中生成一个堆栈框架,用来存储字节码的局部变量和操作数。这个栈帧的大小是预先计算好的,java虚拟机不要求栈帧在内存空间中连续分布。
在hotspot中,上述翻译过程有两种形式:第一种是解释和执行,也就是一个一个来。将字节码翻译成机器码并执行;第二种是实时编译(JIT),即一个方法中包含的所有字节码在执行前都被编译成机器码。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。