首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 运行Java

    本节内容较少且相对简单,主要是了解java程序的运行原理,了解javac和java两个命令的作用。内容如导图所示。 1、准备工作 1.1 检验配置 运行java程序的前提是已安装JDK和配置好了环境变量。按win+R键打开命令窗口,输入cmd进入命令提示符工具,输入javac,出现如下内容,表明环境变量配置完成。 2、编译运行 准备工作完成后在上方的目录路径栏输入cmd回车,如下图,分别输入javac Hello.java和java Hello,最后成功输出Hello Java! javac :负责编译,当执行 javac 时,会启动 java 的编译器程序。 对指定扩展名的 .java 文件进行编译。 生成了jvm可以识别的字节码文件。 2)java命令的作用? java: 用来执行class字节码文件(即运行java程序) pass:答案其实就在最开始的导图里面 4、IDEA中运行 在IDEA中运行该程序: public class Hello{ public

    1.5K32编辑于 2024-01-19
  • 来自专栏用户2442861的专栏

    Java 运行原理

    http://blog.csdn.net/bingduanlbd/article/details/8332664  (java不错) 在研究Java运行原理之前,我们先把视野放宽一点:一般的高级语言是如何工作的 当我们真正运行程序的时候,CPU是读不懂这些英文的,所以我们需要先转化成可执行的二进制文件,这个过程通常由编译器完成。有些编译器直接将源代码编译成机器码,载入内存后CPU可以直接运行。 因此,想搞清楚java程序到底是如何运行的,重点在于弄明白字节码是如何被转化成跟CPU架构相关的机器码然后被执行的。也就是要理解JVM到底是如何工作的。 当运行这个应用程序时,它会要求操作系统给它独立施展手脚的空间:给我一些内存,给我一定的CPU时间片,然后不用管我了。你可能会问,寄存器是硬件啊,它怎么能划分啊,难道是时间划分? 它从文件系统中将字节码文件载入到操作系统分配给Java虚拟机的内存当中,然后解释字节码,转化成机器码,然后经由操作系统到达CPU运行。整个执行过程如下图所示: ?

    1.9K10发布于 2018-09-20
  • 来自专栏小雨的CSDN

    JAVA运行环境及运行过程简述

    初学java会遇到各种各样的问题,从环境安装到环境运行,都需要重新开始,难免会遇到不少问题,下面,我将从初学java的角度介绍环境的安装及配置过程,及环境运行方法。 环境安装及配置 学习Java需要提前准备好两个东西,一个是JDK,还有一个为记事本,后续的代码编写需要在记事本中进行。 2.记事本下载 记事本小巧轻便,适合初学者编译代码,以下是两个记事本供大家参考,任选其一均可; Sublime Text3下载链接 Notepad++下载链接 代码怎么运行? 不同于C语言的是,初学java时运行方式有些不同,下面我将跟大家分享一下最全的代码运行过程: 任意选择一个文件夹创建文本文件 修改文件名为“HelloWorld.java” 右键选择打开方式,以Sublime (输入回车) java 文件名(输入回车) 7.若代码中有中文注释,则如下图输入 则编译运行成功!

    2.2K30编辑于 2022-10-26
  • 来自专栏技术杂记

    Mycat 运行与基础操作4

    | +------------------+ 2 rows in set (0.00 sec) mysql> desc catworld4; ERROR 1146 (42S02): Table 'my3 .catworld4' doesn't exist mysql> Tip: 此时在后端真实库里,是找不到这两张表的 这张表是要我们手动创建的,可以有两种方式 在每个数据节点里手动创建出一样的数据表 直接在 mycat里创建,mycat会再分别去各数据节点创建 这里,我使用第二种方式,直接在mycat里创建 mysql> create table catworld4(id int primary key, name varchar(30)); Query OK, 0 rows affected (0.69 sec) mysql> desc catworld4; +-------+------------ -------------+------+-----+---------+-------+ 2 rows in set (0.05 sec) mysql> explain desc catworld4;

    43220编辑于 2021-12-03
  • 来自专栏DevOps运维

    4、shell脚本后台运行知识

    隐藏可能就会有脚本或命令在执行期间不能中断的需求,若中断,则不仅前功尽弃,还可能破坏系统数据,下面是防止脚本执行终端的3种方法: 1)使用sh /server/scripts/while_01.sh & 命令,即使用&在后台运行脚本 2)使用nohup /server/scripts/while_01.sh & 命令,即使用nohup加&在后台运行脚本 3)使用screen保持会话,然后在执行命令或脚本,即使用screen保持当前会话状态 2.脚本前台后台运行命令 命令 命令说明 a.sh & 将a.sh放到后台执行,常用 ctrl+c 停止当前前台脚本或任务 ctrl+z 暂停当前前台脚本或任务 bg (background)把当前前台脚本或任务放到后台运行

    3.5K20发布于 2021-11-16
  • 来自专栏每天学Java

    在线运行Java代码

    “ 本文将探查 javax.tools 包中,并演示如何使用它们实现Java代码的在线编译 。 前言 在一些网站上有过刷题经历的人,一定会用过在线运行代码的功能,这一篇文章我们就是针对这一功能,来看看如何在线运行我们编辑的Java代码? 实际上在JDK1.6的版本中,提供了这样一个包Javax.tools,它可以实现Java 源代码编译,使您能够添加动态功能来扩展静态应用程序,该包是Java 编程语言编译器框架的主要部分,此框架允许框架的客户端查找并运行程序中的编译器 Java代码。 其内部仅仅有一个方法isSupportedOption 具体实现 我们先看一下运行效果,我们可以看到编译跟正常运行没有区别(除了速度) 上面实现没有引入其他自定义开发文件类,如果需要import其他自定义开发文件类

    5K21发布于 2020-06-02
  • 来自专栏MyPanda的学习笔记

    编译、链接到载入、运行的大致过程----4.运行

    根据前面所述,可执行文件的type=LOAD的segment才会被装载,但是并不会把所有的data和code都加载到内存,因为这样浪费空间也没有必要;装载的时候是按照page(默认为4KB,也就是0x1000 )对齐的方式进行加载,加载之后,程序运行时所访问的地址仍然是虚拟地址,这个虚拟地址就是前文所述的“内存虚拟地址”,而 加载之后的数据毕竟是存在于“物理内存”中的,所以这个“内存虚拟地址”和“物理内存地址 ”之间需要有一个转换,而这个转换工作是“MMU”物理部件来完成的;MMU物理部件管理“内存虚拟地址”到“物理内存地址”的映射; 程序运行到某个代码段或者访问数据的时候,如果在内存中找不到数据,那么就会产生一种叫做 处理完异常之后,程序会回到原来的断点继续运行; 如果程序在运行的过程中发生了内存访问错误,通常会触发core dump, 如果系统开启了core dump, 那么会导出当时的系统内存映像到一个core 的文件里面,然后可以用gdb 工具对这个core dump 文件进行调式,从而尽可能获得当时的内存状况,分析发生crash的原因,core dump 中使用的地址依然是”内存虚拟地址“, 所以 在程序运行的过程中

    97310发布于 2020-06-08
  • 来自专栏小黑在哪里

    在Docker中运行PostgreSQL + pgAdmin 4

    运行postgresql:docker run -d -p 5432:5432 --name postgresql -v pgdata:/var/lib/postgresql/data -e POSTGRES_PASSWORD 拉取postgresql可视化工具pgadmin4:docker pull dpage/pgadmin4 ? 运行pgadmin4:docker run -d -p 5433:80 --name pgadmin4 -e PGADMIN_DEFAULT_EMAIL=test@123.com -e PGADMIN_DEFAULT_PASSWORD =123456 dpage/pgadmin4 ? 默认username是postgres,password是上面设置的pg123456 注意,因为pgadmin运行在docker里,所以host不能写localhost。

    9.2K41发布于 2020-08-14
  • 来自专栏Golang开发

    iOS运行时(4)——常用函数

    NSString stringWithUTF8String:property_getAttributes(property)]; NSLog(@"%@%@", type, name); } 4

    90330发布于 2019-05-29
  • 来自专栏深度学习与python

    Go 运行时:4 年之后

    作者 | Michael Knyszek 译者 | 明知山 策划 | Tina 自 2018 年以来,Go GC,以及更广泛的 Go 运行时,一直在稳步改进。 近日,Go 社区总结了 4 年来 Go 运行时的一些重要变化。 这些重要变化主要是: sync.Pool 是一种 GC 感知的重用内存的工具,具有较低的延迟影响,并且能够比之前更有效地回收内存。 Go 运行时团队一直不愿意在 Go 运行时中添加新的旋钮,他们的理由很充分——每个新的旋钮代表了配置空间中的一个新的维度,我们需要对其进行测试和维护,而且可能要永远持续下去。 如果只使用 GOGC,Go 运行时根本不知道它有多少可用的内存。通过设置内存限制,运行时能够意识到什么时候需要更努力地工作以减少内存开销,从而使运行时能够健壮地应对瞬时的、可恢复的负载峰值。 例如,它是对应用程序中 Go 部分的整个内存占用的限制,而不仅仅是 Go 的堆,因此用户不需要额外计算 Go 运行时的开销。

    63020编辑于 2023-03-29
  • 来自专栏用户1880875的专栏

    本地运行 Kubernetes 的 4 种方法

    虽然大多数人在云环境中运行 Kubernetes,但在本地运行 Kubernetes 集群不仅是可能的,它还至少有两个好处: 在决定使用 Kubernetes 作为主要平台部署应用之前,你可以快速试用它 kind 使用 Docker 容器“节点”运行本地 Kubernetes 集群。 CodeReady Containers(CRC)用来管理为测试和开发目的优化的本地 OpenShift 4.x 集群。 Minishift 通过在虚拟机 (VM) 内运行单节点的 OpenShift 集群,帮助你在本地运行 OpenShift 3.x 集群。 CRC 将一个最小的 OpenShift 4.x 集群带到你的本地计算机上,为开发和测试目的提供一个最小的环境。CRC 主要针对开发者的桌面使用。

    2.5K30发布于 2021-09-13
  • 来自专栏机器学习/数据可视化

    Spark笔记4-RDD运行原理

    MapReduce是将中间结果写入磁盘中,下次使用直接从磁盘中取出来,产生两个问题: 磁盘IO开销大 序列化和反序列化的开销(序列化:将数据对象转成可保存和传输的相应格式,比如Java对象转成二进制或者字符串等 去掉在上海的join过程,管道化处理: RDD运行原理全过程 将写的代码提交给整个Spark框架,生成有向无环图DAG DAG提交给DAG Scheduler,分解成多个阶段,每个阶段包含多个任务task

    94610发布于 2021-03-02
  • 来自专栏量子化学

    PSI4程序安装及运行

    PSI4也可以从源码编译,但有一定的难度。如果有读者成功编译过PSI4,欢迎与大家分享。 二、程序运行及输入文件写法 PSI4的运行命令很简单,可使用 psi4 -i input_file -o output_file -n 16 其中-i后跟输入文件名称,-o后跟输出文件名称,-n后跟并行线程数 后面通过set字段设置程序运行的一些关键词,例如此处我们指定基组为def2-TZVP,并使用density fitting技术来加速电子积分的计算。 更多更详细的说明可参考PSI4官方的在线说明文档,见: https://psicode.org/psi4manual/master/index.html 三、从Gaussian向PSI4传轨道 公众号前期介绍过的开源程序 PSI4的输出文件非常易读,本文就不做介绍。后续我们还将陆续介绍PSI4的其他功能。

    4.1K40发布于 2021-07-16
  • 来自专栏Coding Diary

    Java程序运行原理分析

    JVM运行时数据区 ? Generation), Java8放在元数据空间, 并且通过GC机制对这个区域进行管理 运行时常量池是方法区的一部分 Java堆 Java堆是被所有共享的一块内存区域, 在虚拟机启动时创建 存放对象的实例 Java虚拟机栈 Java虚拟机栈是线程私有的, 它的生命周期与线程相同 Java虚拟机栈描述的是Java方法执行的内存模型: 每个方法被执行的的时候都会同时创建一个栈帧(栈帧是方法运行时的基础数据结构 为了线程切换后, 需要通过程序计数器来恢复正确的执行位置 查看class文件内容 使用Demo.Java进行测试, 运行javac Demo.java编译成class文件, 然后运行javap -v Demo.class 4 line 5: 7 line 6: 11 line 7: 15 line 8: 25 } SourceFile: "Demo.java" 程序完整运行分析

    1.5K20发布于 2019-09-25
  • 来自专栏CBeann的博客

    Java中运行shell脚本

    ; import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; /** * @author chaird * @create 2020-10-11 15:53 */ public class ShellUtils { ; import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import } catch (Exception e) { e.printStackTrace(); } return result; } } 前提是:你的脚本有权限去运行 ,即在linux上有权限去运行,否则不通; 如果不满足,如果不满足,下下策为执行脚本之前先执行以下赋予权限的命令 ,在执行你的命令 ShellUtils.exceShell("chmod -R 777

    3.9K10编辑于 2023-12-25
  • 来自专栏大数据-Hadoop、Spark

    java -jar运行MR程序

    vi bin/hadoop.jar image.png 其实内部调用了RunJar.java 用来读取hadoop环境参数,配置文件等。 2、现在想用单纯的java -jar来提交MR任务到yarn也是可行的 3、打个胖包。 image.png 4、java -jar wc-fat.jar /day08-wc/input/wc.txt /day08-wc/output3 报错: image.png 胖包里面没有配置文件 //job.setJarByClass(WordcountDriver.class); job.setJar("/home/hadoop/lib/wc-fat.jar"); 再次执行即可: java /home/hadoop/lib/wc-fat.jar"); 再次执行即可: java -jar wc-fat.jar /day08-wc/input/wc.txt /day08-wc/output4

    1.9K40发布于 2018-07-04
  • 来自专栏醉程序

    Java Jar包运行参数

    Java程序编译为Jar包后,使用nohup java [-options] -jar jarfile > LOG_FILE 2>&1 &来后台运行。 假设我们的虚拟机的内存是4196MB(可通过free -m | awk '/Mem/{print $2}'来查看) -server 选择VM -server -Xms -Xmx -Xmn -Xss 设置初始 Java 堆大小,推荐设置为内存的一半大小,这里是2048m 设置最大 Java 堆大小,推荐设置为内存的一半大小,这里是2048m 设置年轻代大小,推荐设置为Xms的3/8,这里是768m 设置 Java -Xmx2048m -Xmn768m -Xss256k -XX:MetaspaceSize= -XX:MaxMetaspaceSize= XX:MetaspaceSize=推荐设置为Xms的1/4

    5.4K00发布于 2019-12-29
  • 来自专栏kali blog

    kali怎么运行java软件

    kali linux是默认安装java环境的,那么他该怎么样运行其他平台下的java软件呢? 一:我们先在windows下编写一个小小的java程序。 image.png 附上源码: package kali; import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame btnNewButton_1.setBounds(220, 150, 93, 23); contentPane.add(btnNewButton_1); } } 二:生成可运行的 如图,在windows下我们运行java程序,效果如下: image.png 一个简单的登录窗口。 那么,我们如何在linux下运行我们的java程序呢? 三:kali 下运行jar 我们只需要执行命令: java -jar xxx.jar 这样,我们的java程序也就在kali下运行 image.png 版权属于:逍遥子大表哥 本文链接:https://

    3.9K20编辑于 2021-12-17
  • 来自专栏程序员云帆哥

    Java程序运行机制

    编译生成的可执行性程序可以脱离开发环境,在特定的平台上独立运行。     现有的C、C++、Objective-C、Pascal等高级语言都属于编译型语言。      可以认为:每次执行解释型语言的程序都需要进行一次编译,因此解释型语言的程序运行效率通常较低,而且不能脱离解释器独立运行。 JVM是可运行Java字节码文件的虚拟计算机。所有平台上的JVM向编译器提供相同的编程接口, 而编译器只需要面向虚拟机,生成虚拟机能理解的代码,然后由虚拟机解释执行。 JVM是Java程序跨平台的关键部分,只要为不同平台实现了相应的虚拟机,编译后的Java字节码就可以在该平台上运行。 显示,相同的字节码程序需要在不同的平台上运行,这几乎是“不可能的”,只要通过中国的转换器才可以是实现,JVM就是这个转换器。     

    1.3K40编辑于 2022-05-12
  • 来自专栏web编程技术分享

    如何简单运行Java程序

    如何运行Java程序,用java命令即可,一定不要忘了写main方法哦,一个java文件里面可以写很多个class。 而java虚拟机也无法直接运行运行.java的文件,我们需要把java文件编译成.class文件,这个编译的过程,就是用javac命令。 为什么,因为我的Demo.java文件本来就是一个空文件啊,里面啥也没有。 步骤 4 什么是Java虚拟机? 我们在上一节下载了JDK的安装包,解压后又配置了环境变量。 image 步骤 5 java里面要写什么? 上面那张图有点复杂?没关系,现在我们只需要明白,JVM可以编译和运行某一个java文件,比如Demo.java。 我们要运行java程序,其实就是用java命令执行某一个class文件,运行的前提是,这个class文件的“前身” -- 即java文件,它里面的class有一个main方法。

    5.3K20发布于 2021-04-09
领券