上一篇介绍到,我们在Eclipse里导出jar包后,直接点击jar包就能运行。

假设这里有一个人,他在他的电脑上接收了这个jar包,可是,无论他狂点jar包多少次,
电脑还是一点反应都没有,这时候他就应该了解一下原理了。

我们点击jar包时,电脑会自动从环境变量中寻找能加载运行这个jar包的软件,这里他要找的的软件叫做JRE(java runtime environment)。

回顾一下:

  • 我们安装Eclipse,Tomcat的时候,都必须先安装一个叫jdk的东西,看起来这两个挺像的(都以j开头,都有三个字母哈哈)。

  • 我们知道,虚拟机(jvm)编译class文件为机器码,使机器能执行。


那么这三者有什么关系呢?

jdk包含了jre,jre包含了jvm。

jvm的作用是编译.class文件为机器码,使文件运行。
针对不同的系统,有不同的jvm版本,使得.class文件在不同的平台上都能被运行,所以说“write once,run anywhere”

jre相对于jvm,多了jvm解析.class文件时用到的包。
所以只有jvm是编译不出来.class文件的。

jdk在jre的基础上,增加了编译器,可以把.java文件编译成.class文件;还提供了java,javac,javap等便捷的命令。

例子:你文件夹里有一个fiary.java文件,现在你想运行它。
你在命令行里输入“javac fiary.java”,这时在同级目录下产生了一个fiary.class文件。
然后你在命令行里输入“java fiary.class”或者“java fiary”,这时候fiary.java文件里的代码就开始运行了。
这个时候你在dos窗口上的操作和你在Eclipse里的console里操作没什么区别。

让孩纸水几篇博客吧,毕竟孩子欠了将近两个月的博客呜呜呜。

标签智能推荐:

软件设计模式

由于这几天软件设计马上就要考试了,所以先把软件设计模式的实验做完,除了java代码外还有c++代码明天打算继续写剩下的c++部分的代码

自我介绍+软工5问

这个作业属于哪个课程软件工程这个作业要求在哪里作业要求这个作业的目标自我介绍+软工5问+学习使用Markdown+学习使用GitHub自我介绍:姓名:卢浩华学号:3119005428专业:信息安全班级:19级1班兴趣爱好:羽毛球、网球、看小说GitHub:https://github.com/3375227589编程语言:C语言、java、Python软工5问:什么是软件工程为什么要学软件工程怎么

软件工程:第一课

这个作业属于哪个课程软件工程这个作业要求在哪里作业链接这个作业的目标为学习软件工程做准备学号20188437关于自己爱好看电影,特别是剧情类的电影,对数码科技感兴趣,学习从来不用功,生活特别的枯燥。向往创新。目前具备C语言、Java、SQL语言知识,还学习了很多软件设计相关的知识,对物联网感兴趣,缺少持之以恒的能力。之前的代码量少得可怜,本学期希望达到的代码量没有目标。期待在课程中收获以后能真正用

作业三-综合系统开发-需求分析

所属课程2022软件代码开发技术作业要求读书笔记----软件设计原则、设计模式作业目标1.运用UML,领域驱动设计方法、软件设计模式进行设计2.熟悉掌握GitHub一、项目背景一家公司提供服务出租,自身有一些员工,另外还有很多自由职业者作为服务商存在。公司目前使用Excel工作表来管理他们的客户(自由职业者),时间表等。Excel解决方案无法很好地进行扩展。它无法应对多用户使用的场景,也不提供安全

MVC:开发模式&&三层架构:软件设计架构

化了Servlet的开发,如果过度使用jsp,在jsp中即写大量的java代码,有写html表,造成难于维护,难于分工协作再后来,java的web开发,借鉴mvc开发模式,使得程序的设计更加合理性MVC:M:Model,模型。JavaBean完成具体的业务操作,如:查询数据库,封装对象V:View,视图。JSP展示数据C:Controller,控制器。Servlet获取用户的输入调用模型将数据交给

Java设计模式:23种设计模式全面解析(超级详细)

立了软件设计模式领域的里程碑,人称「GoF设计模式」。这23种设计模式的本质是面向对象设计原则的实际运用,是对类的封装性、继承性和多态性,以及类的关联关系和组合关系的充分理解。当然,软件设计模式只是一个引导,在实际的软件开发中,必须根据具体的需求来选择:对于简单的程序,可能写一个简单的算法要比引入某种设计模式更加容易;但是对于大型项目开发或者框架设计,用设计模式来组织代码显然更好。关于本教程本教程

自我介绍+软工5问

介绍,让老师更快认识自己;提出问题和自己的期望,方便老师认识我们的需求,更好地进行备案。>自我介绍个人信息姓名:邱榕涛学院:计算机学院班级:19级网络工程3班兴趣爱好打篮球游戏唱K个人经历学习方面:基本掌握c语言和java,大二面试工作室学习了一部分Object-C编程,总体编程能力不足社团活动方面:加入了揭阳乡会黄金战队,去年的潮汕杯比赛夺得冠军软工5问软件工程的概念如何分析软件设计要求软

An Open Source Software Suite for Multi-Dimensional Meteorological Data Computation and Visualisation用于多维气象数据计算和可视化的开源软件套件

ples.MeteoInfoJava软件工具是通过集成地理信息系统(GIS)和科学计算环境(SCE)为多维气象数据分析和可视化而开发的。包括用于软件开发的Java类库、用于空间数据操作和交互式多维地球科学数据探索的GIS桌面应用程序,以及带有Jython脚本的科学计算和可视化环境。基于UnidataNetCDFJava库,支持NetCDF、HDF和GRIB等流行的地球科学数据格式;此外,它的多维阵

千锋重庆Java学习之如何成为全栈Java开发人员

建议你报名参加java培训,可以学到这个很棒的框架的基础知识,如果你已经熟悉Spring,那么你应该探索Spring引导和Spring云来开发下一代Java应用程序。5.JUnit和Mockito一个优秀而专业的Java开发人员几乎总是为他的代码编写单元测试,Java开发人员可以使用一些用于单元测试、集成测试和自动化测试的工具。对于那些刚刚接触Java世界和单元测试的人来说,JUnit是最好的入门

框架+设计模式

1. http://c.biancheng.net/view/1317.html 软件设计模式概述2. https://www.oschina.net/news/73836/15-android-general-popular-frameworks  Android 通用流行框架大全