centos

CentOS Java虚拟机怎么配置

小樊
35
2025-10-28 03:20:39
栏目: 云计算

一、安装Java Development Kit (JDK)
在CentOS上配置Java虚拟机前,需先安装JDK。可选择OpenJDK(开源)或Oracle JDK(官方):

二、配置Java环境变量
为了让系统全局识别Java命令,需设置JAVA_HOMEPATH等环境变量:

  1. 编辑全局配置文件/etc/profile(对所有用户生效)或用户级配置文件~/.bashrc(仅对当前用户生效):
    sudo vim /etc/profile
    
  2. 在文件末尾添加以下内容(以/usr/lib/jvm/jdk-11.0.2为例):
    export JAVA_HOME=/usr/lib/jvm/jdk-11.0.2
    export PATH=$JAVA_HOME/bin:$PATH
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    
  3. 保存文件并使配置生效:
    source /etc/profile
    
  4. 验证安装:运行java -version,若显示Java版本信息(如openjdk version "11.0.2"),则说明安装成功。

三、配置JVM参数
JVM参数决定了Java应用的内存管理、垃圾回收等行为,需根据应用需求调整:

  1. 常用内存参数
    • -Xms:设置JVM初始堆内存大小(如-Xms512m,表示初始堆为512MB);
    • -Xmx:设置JVM最大堆内存大小(如-Xmx2g,表示最大堆为2GB);
    • -Xmn:设置年轻代大小(如-Xmn1g,表示年轻代为1GB);
    • -Xss:设置每个线程的栈大小(如-Xss2m,表示栈大小为2MB)。
  2. 垃圾回收器配置
    • -XX:+UseG1GC:使用G1垃圾回收器(适用于大内存、低延迟场景,默认从Java 9开始启用);
    • -XX:+UseParallelGC:使用并行垃圾回收器(适用于吞吐量优先场景,如批处理应用);
    • -XX:+UseConcMarkSweepGC:使用CMS垃圾回收器(适用于低延迟场景,Java 14及以上已移除)。
  3. 元空间配置(Java 8及以上)
    • -XX:MetaspaceSize:设置元空间的初始大小(如-XX:MetaspaceSize=256m);
    • -XX:MaxMetaspaceSize:设置元空间的最大大小(如-XX:MaxMetaspaceSize=512m),避免元空间溢出。
  4. 错误处理参数
    • -XX:+HeapDumpOnOutOfMemoryError:在发生OutOfMemoryError时生成堆转储文件;
    • -XX:HeapDumpPath:设置堆转储文件的保存路径(如-XX:HeapDumpPath=/var/log/java/heapdump.hprof),便于后续分析内存泄漏问题。
  5. 参数设置方式
    • 临时设置:直接在启动命令中添加参数,如java -Xms512m -Xmx2g -XX:+UseG1GC -jar myapp.jar
    • 永久设置:通过环境变量JAVA_OPTS配置(适用于长期运行的应用),编辑/etc/profile或应用启动脚本(如Tomcat的catalina.sh),添加export JAVA_OPTS="-Xms512m -Xmx2g -XX:+UseG1GC",然后执行source /etc/profile使配置生效。

四、针对应用服务器的配置(以Tomcat为例)
若使用Tomcat作为Java应用服务器,需通过其配置文件设置JVM参数:

  1. 进入Tomcat的bin目录:cd /opt/tomcat/bin(假设Tomcat安装在/opt/tomcat);
  2. 创建setenv.sh文件(若不存在):sudo vim setenv.sh
  3. 在文件中添加JVM参数:
    export JAVA_HOME=/usr/lib/jvm/jdk-11.0.2
    export JAVA_OPTS="-Xms1g -Xmx2g -XX:+UseG1GC -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=512m"
    
  4. 保存文件并赋予执行权限:sudo chmod +x setenv.sh
  5. 重启Tomcat使配置生效:sudo systemctl restart tomcat

五、验证配置是否生效

  1. 运行java -version,确认Java版本与安装的JDK一致;
  2. 启动Java应用(如java -Xms512m -Xmx2g -XX:+UseG1GC -jar myapp.jar),观察启动日志是否有参数提示;
  3. 使用jps命令查看Java进程ID,再通过jinfo -flags <PID>命令查看该进程的JVM参数,确认配置是否生效。

六、注意事项

0
看了该问题的人还看了