java -server 和 -client 的不同,及 java -server 时抛错原因

在dos窗口运行:java -server

Error: missing `server‘ JVM at `C:\Program Files\Java\jre7\bin\server\jvm.dll‘.

Please install or use the JRE or JDK that contains these missing components.

网上的意思:

找到jdk安装目录下面 jre\bin 里面有 client 和 server 文件夹。

把 server 文件夹复制到 C:\Program Files\Java\jre7\bin\ 中就行了。

但我操作完成后,再试: java -server,显示:

Error occurred during initialization of VM

java/lang/NoClassDefFoundError: java/lang/invoke/AdapterMethodHandle

我又执行了一下: path c:\jdk\bin

然后再试 java -server, 终于成功了。 (可能是因为我的电脑上同时装了 jdk1.6 和 jdk1.7)

试了一下 java -server -version

java version "1.7.0_25"

Java(TM) SE Runtime Environment (build 1.7.0_25-b17)

Java HotSpot(TM) Server VM (build 23.25-b01, mixed mode)

下面是关于 -client 与 -server 的不同之处:

java -version //查看JVM默认的环境

java -client -version //查看JVM的客户端环境,针对GUI优化,启动速度快,运行速度不如server

java -server -version //查看JVM的服务器端环境,针对生产环境优化,运行速度快,启动速度慢

JVM工作在Server模式可以大大提高性能,但应用的启动会比client模式慢大概10%。当该参数不指定时,虚拟机启动检测主机是否为服务器,如果是,则以Server模式启动,否则以client模式启动,J2SE5.0检测的根据是至少2个CPU和最低2GB内存。

当JVM用于启动GUI界面的交互应用时适合于使用client模式,当JVM用于运行服务器后台程序时建议用Server模式。

JVM在client模式默认-Xms是1M,-Xmx是64M;JVM在Server模式默认-Xms是128M,-Xmx是1024M。我们可以通过运行:java -version来查看jvm默认工作在什么模式。

server jvm比client jvm进行了更多的优化,但同时这种优化有可能会引起一些在client jvm不会出现的问题,所以说在开发和测试的时候也尽量指定为server jvm

时间: 2024-12-11 15:35:48

java -server 和 -client 的不同,及 java -server 时抛错原因的相关文章

Java报错原因汇总

1. java.lang.nullpointerexception 这个异常大家肯定都经常遇到,异常的解释是"程序 遇上了空指针",简单地说就是调用了未经初始化的对象或者是不存在的对象,这个错误经常出现在创建图片,调用数组这些操作中,比如图片 未经初始化,或者图片创建时的路径错误等等.对数组操作中出现空指针,很多情况下是一些刚开始学习编程的朋友常犯的错误,即把数组的初始化和数组元素的初 始化混淆起来了.数组的初始化是对数组分配需要的空间,而初始化后的数组,其中的元素并没有实例化,依然是

java.sql.SQLException: Unknown initial character set index '255' received from server. Initial client character set can be forced via the 'characterEncoding' property.解决方案

解决方案: 首先查看数据库的版本号,删除旧的jar包,将mysql-connector-java.jar更换成对应版本号 同时在连接数据库的url后加上?useUnicode=true&characterEncoding=utf-8 java.sql.SQLException: Unknown initial character set index '255' received from server. Initial client character set can be forced via

【转】Error: no `server' JVM at `C:\Program Files\Java\jre6\bin\server\jvm.dll'.解决办法

出现问题: 用java -jar XXX.jar -server -Xms900m -Xmx900m 或者 java -server -version 提示错误 Error: no `server' JVM at `C:\Program Files\Java\jre6\bin\server\jvm.dll'.. 解决方法 copy ’server’ folder from the JDK’s JRE’s bin folder (example: C:\Program Files\Java\jdk

Java连接MySQL Warning: Establishing SSL connection without server's identity verification is not recommended

1. 数据库 1.1 创建表 在当前数据库students中,创建数据表student: 1 mysql> create table student( 2 -> studentid char(10),#学生ID 3 -> name varchar(10),#学生姓名 4 -> age smallint,#学生年龄 5 -> grade smallint)#成绩 6 -> ; 1.2 插入信息: INSERT student VALUES("1*********

在windows server 2008下搭建简单的java学习环境

1.JDK安装 直接运行下载的JDK安装文件jdk-8u5-windows-i586.exe,按照提示指引进行安装.其中中途有选择JRE的安装,也一并安装了. 2.JDK与JRE的关系 JDK是Java的开发平台,在编写Java程序时,需要JDK进行编译处理: JRE是Java程序的运行环境,包含了JVM的实现及Java核心类库,编译后的Java程序必须使用JRE执行. 在下载的JDK安装包中集成了JDK与JRE,所以在安装JDK过程中会提示安装JRE. 3.环境配置 计算机->属性->高级系

Eclipse运行时提示“Failed to load the JNI shared library /Java/jre6/bin/client/jvm.dll”的一个解决方案

出现这个问题的一个原因是eclipse需要的32位jdk,你的环境变量中配的是64位jdk 于是有人建议,重装个32位的jdk,把环境变量换成32位的jdk,但如果你的其它程序需要64位jdk的话,这肯定不是一个好办法 还有一种方法是在 eclipse根目录下有个eclipse.ini文件,添加个 -vm参数 -vm C:/Java32/jdk1.7.0_45/bin/javaw.exe      //这是我的32位jdk 注意位置 -startup plugins/org.eclipse.eq

Caused by: java.io.EOFException: Can not read response from server.

1.错误描述 The last packet successfully received from the server was 76,997 milliseconds ago. The last packet sent successfully to the server was 78,995 milliseconds ago. at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.ref

整理部分java代码和oracle,mysql,sql server对比数据类型

搜索了一下网上关于数据类型的对比,几乎没有三种数据库的对比,我就写了一些字段的对比,如果有不对的地方,请各位不吝指教. JAVA字段 oracle字段 mysql字段 sql server字段 int number int int java.lang.double number(p,s) double float java.lang.String varchar2 varchar varchar java.sql.Date date date ( year) datetime2 java.sql

java.io.FileNotFoundException: /opt/apache-tomcat-7.0.57/conf/server.xml (权限不够)

1 错误描述 [email protected]:~$ cd /opt/apache-tomcat-7.0.57 [email protected]:/opt/apache-tomcat-7.0.57$ bin/startup.sh Using CATALINA_BASE: /opt/apache-tomcat-7.0.57 Using CATALINA_HOME: /opt/apache-tomcat-7.0.57 Using CATALINA_TMPDIR: /opt/apache-tomc