选择运行 Java 程序的方式

在运行 Java(TM) 程序时,您可以选择希望使用的方式。所有方式都验证代码并创建 Java 程序对象来存放预验证格式的程序。可使用下列任何一种方式:

  • 解释方式
  • 直接处理
  • “及时”(JIT)编译
  • “及时”(JIT)编译并直接处理
选择方式 详细信息
解释方式
在运行时对每个字节码进行解释。

有关以解释方式运行 Java 程序的信息,参见运行 Java(RUNJVA)命令

直接处理
方法的机器指令在首次调用该方法期间生成并保存下来,以供程序下次运行时使用。并且,整个系统还共享一个副本。

有关使用直接处理方式来运行 Java 程序的信息,参见运行 Java(RUNJVA)命令

“及时”(JIT)编译
方法的机器指令在首次调用该方法期间生成,并在 Java 虚拟机的运行期间得到保存。

要使用“及时”编译器,需要将编译器值设置为 jitc。可以通过添加环境变量或设置 java.compiler 系统属性来设置该值。请从以下列表中选择一种方法来设置编译器值:

  • 从 iSeries 服务器的命令行提示符下,通过使用“添加环境变量”(ADDENVVAR)命令来添加环境变量。然后,使用“运行 Java”(RUNJVA)命令或 JAVA 命令来运行 Java 程序。例如,使用:

    ADDENVVAR ENVVAR (JAVA_COMPILER) VALUE(jitc)
    JAVA CLASS(Test)
    
  • 在 iSeries 命令行上设置 java.compiler 系统属性。例如,输入 JAVA CLASS(Test) PROP((java.compiler jitc))
  • 在 Qshell Interpreter 命令行上设置 java.compiler 系统属性。例如,输入 java -Djava.compiler=jitc Test

在设置此值之后,JIT 编译器便在运行 Java 代码之前对所有 Java 代码执行优化。

“及时”(JIT)编译并直接处理
最常见的使用“及时”(JIT)编译器的方法是使用 jit_de 选项。当使用此选项运行时,已对直接处理进行了优化的程序会以直接处理方式运行。未对直接优化进行优化的程序以 JIT 方式运行。

要将 JIT 方式与直接处理方式配合使用,您需要将编译器值设置为 jitc_de。可以通过添加环境变量或设置 java.compiler 系统属性来设置该值。请从以下列表中选择一种方法来设置编译器值:

  • 通过在 iSeries 命令行上输入“添加环境变量”(ADDENVVAR)命令来添加环境变量。然后,使用“运行 Java”(RUNJVA)命令或 JAVA 命令来运行 Java 程序。例如,输入

    ADDENVVAR ENVVAR (JAVA_COMPILER) VALUE(jitc_de)
    JAVA CLASS(Test)
    
  • 在 iSeries 命令行上设置 java.compiler 系统属性。例如,输入 JAVA CLASS(Test) PROP((java.compiler jitc_de))
  • 在 Qshell Interpreter 命令行上设置 java.compiler 系统属性。例如,输入 java -Djava.compiler=jitc_de Test

在设置此值之后,将使用为直接处理而创建的类文件的 Java 程序。如果该 Java 程序不是为直接处理创建的,则 JIT 在运行之前优化类文件。有关更多信息,参见“及时”编译器与直接处理的比较

运行 Java 程序的方法有三种(CL、QSH 和 JNI)。每一种方法都有唯一的方法来指定方式。下表显示了如何完成此操作。

方式 CL 命令 QShell 命令 JNI 调用 API
解释 INTERPRET(*YES) -Djava.compiler=NONE -interpret os400.run.mode="interpret"
DE INTERPRET(*NO) -Djava.compiler=NONE
  • os400.run.mode=
    "program_created=pc"
  • os400.create.type=
    "direct"
JIT INTERPRET(*JIT) -Djava.compiler="jitc" os400.run.mode="jitc"
JIT_DE(缺省) INTERPRET(*OPTIMIZE) OPTIMIZE(*JIT) -Djava.compiler="jitc_de" os400.run.mode="jitc_de"

 

时间: 2024-10-26 05:55:10

选择运行 Java 程序的方式的相关文章

在.NET平台运行Java程序-IKVM.NET入门

程序 摘要 IKVM.NET是一个针对Mono和微软.net框架的java实现,其设计目的是在.NET平台上运行java程序.本文将比较详细的介绍这个工具的原理.使用入门(如何java应用转换为.NET应用.如何在java中开发.NET应用),希望能给大家带来惊喜. 一.介绍 IKVM.NET是一个针对Mono和微软.net框架的java实现,其设计目的是在.NET平台上运行java程序.它包含了以下的组建:* 一个用.NET实现的java虚拟机 * 一个java类库的.NET实现 * 致力于在

Java魔法堂:以Windows服务的形式运行Java程序

一.前言   由于防止维护人员误操作关闭Java控制台程序,因此决定将其改造为以Windows服务的形式运行.弄了一个上午总算搞定了,下面记录下来,以供日后查阅.   二.Java Service Wrapper   官网地址:http://wrapper.tanukisoftware.com/doc/english/download.jsp   JavaServiceWrapper以守护进程或windows服务的方式运行java程序.JSW提供四种方案改造原有项目,以实现守护进程或window

从根本上改变我们开发Java程序的方式:Lambda

当今世界主流编程语言无不吸纳强大的闭包概念,但有个例外,它就是Java.数年来,Java语言中增加闭包特征的工作看起来毫无进展. 早在15年之前,Scala语言和TypeSafe框架的作者Martin Odersky和Phillip Wadler发布了实验性的"Pizza"项目,由此,人们开始试图将闭包纳入编程语言的基本特征之一.尽管这看起来有点过于复杂,Java社区大概在2008年就有了接纳闭包概念的想法.但由于Oracle对Sun微系统公司的匆忙收购,Java被冷落,Java语言新

Win8.1系统无法运行Java程序的解决办法

  部分Win8.1系统用户发现在使用Java程序时,页面上留块空白和一个黑黑的叉叉,或者干脆无法运行程序.下面系统之家小编就为大家介绍一下Win8.1系统无法运行Java程序的解决办法! 1.确定你已经安装了Java; 2.确定你的IE已经启用了JAVA插件.IE选项->程序->管理加载项:[JAVA SE Runtime Enviroment]启用; 3.打开JAVA控制面板确认[启用浏览器中的JAVA内容]是否已勾选.计算机->控制面板->程序->JAVA->安全

cmd运行java程序-cmd指令运行java程序问题

问题描述 cmd指令运行java程序问题 用cmd指令运行java程序时,出现javac不是内部或外部指令提示,无法编译 解决方案 没有配置JAVA环境变量,看JDK部分http://blog.csdn.net/login950518/article/details/50720020 解决方案二: cmd运行Java程序的问题java程序获得windows系统的一些参数(cmd指令运行返回结果)java程序由于编码问题在cmd中运行失败 解决方案三: 是环境变量的问题,如果不配置的话,需要进入J

eclipse-Eclipse 运行java程序时出现错误

问题描述 Eclipse 运行java程序时出现错误 下面这张是我上一次运行的java程序 解决方案 main 函数要传递String args[] 如下: public static void main(String args[]) { } 解决方案二: 先编译 后运行 鼠标点击format.java的代码页面,就是现在这个页面 在这个页面下 ctr l+ s 编译当前文件 然后运行 解决方案三: 啥意思?这不是两个工程吗?要运行Format.java的话,选中这个文件,右键->Run as

java-请问如何在WINDOWS下后台运行JAVA程序而不打开命令行窗口

问题描述 请问如何在WINDOWS下后台运行JAVA程序而不打开命令行窗口 请问如何在WINDOWS下后台运行JAVA程序而不打开命令行 我添加了一个任务计划但是每次运行程序的时候都会打开命令行窗口我不希望命令行窗口出现怎么办? 解决方案 @echo off 你加入这个你再试试

ubuntu-Ubuntu下怎么运行Java程序

问题描述 Ubuntu下怎么运行Java程序 首先我的Ubuntu是装在虚拟机下的,然后我配置好了jdk环境,没有装开发工具. 我在windows下面用Eclipse编好的Java项目代码怎么在Ubuntu下面运行呢? 我试过把整个项目文件夹拖到Ubuntu的home路径下,然后在终端一个打开文件夹之后,用javac,java的命令行编译调试我主方法所在的类,但是报错... 解决方案 Ubuntu下也有Eclipse,用法完全一样,直接打开你在Windows下用Eclipse创建的的工作区就可以

java程序 不能运行-.java程序运行中出现的问题

问题描述 .java程序运行中出现的问题 为什么相同我在eclipse上运行java程序的时候只有run configurations选项而没有run Application选项,我的java刚入门,提的问题比较低级,请各位大神多多指教,非常感谢! 解决方案 没有run Application(运行应用)选项,很明显,你的文件里面没有Main函数,Main函数是程序的入口和出口,没了Main函数自然不能启动程序的.看看你的文件里面有没有:`public static void main(Stri