Java 命令

解压 jar

# 使用 jar 命令
mkdir app
cd app
jar xf ../app.jar
ls -la
# 使用 unzip 命令
unzip app.jar -d app

Settings:properties

java -XshowSettings:properties -version
 xuxiaowei@xiaomi  ~  java -XshowSettings:properties -version
Property settings:
    file.encoding = UTF-8
    file.separator = /
    java.class.path = 
    java.class.version = 69.0
    java.home = /Library/Java/JavaVirtualMachines/graalvm-25.jdk/Contents/Home
    java.io.tmpdir = /var/folders/hv/hn_sbnfj72l36y6lvbf32mhm0000gn/T/
    java.library.path = /Users/xuxiaowei/Library/Java/Extensions
        /Library/Java/Extensions
        /Network/Library/Java/Extensions
        /System/Library/Java/Extensions
        /usr/lib/java
        .
    java.runtime.name = Java(TM) SE Runtime Environment
    java.runtime.version = 25.0.4+7-LTS-jvmci-b01
    java.specification.name = Java Platform API Specification
    java.specification.vendor = Oracle Corporation
    java.specification.version = 25
    java.vendor = Oracle Corporation
    java.vendor.url = https://java.oracle.com/
    java.vendor.url.bug = https://bugreport.java.com/bugreport/
    java.vendor.version = Oracle GraalVM 25.0.4+7.1
    java.version = 25.0.4
    java.version.date = 2026-07-21
    java.vm.compressedOopsMode = Zero based
    java.vm.info = mixed mode, sharing
    java.vm.name = Java HotSpot(TM) 64-Bit Server VM
    java.vm.specification.name = Java Virtual Machine Specification
    java.vm.specification.vendor = Oracle Corporation
    java.vm.specification.version = 25
    java.vm.vendor = Oracle Corporation
    java.vm.version = 25.0.4+7-LTS-jvmci-b01
    jdk.debug = release
    line.separator = \n 
    native.encoding = UTF-8
    os.arch = aarch64
    os.name = Mac OS X
    os.version = 15.2
    path.separator = :
    stderr.encoding = UTF-8
    stdin.encoding = UTF-8
    stdout.encoding = UTF-8
    sun.arch.data.model = 64
    sun.boot.library.path = /Library/Java/JavaVirtualMachines/graalvm-25.jdk/Contents/Home/lib
    sun.cpu.endian = little
    sun.io.unicode.encoding = UnicodeBig
    sun.java.launcher = SUN_STANDARD
    sun.jnu.encoding = UTF-8
    sun.management.compiler = HotSpot 64-Bit Tiered Compilers
    user.country = CN
    user.dir = /Users/xuxiaowei
    user.home = /Users/xuxiaowei
    user.language = zh
    user.name = xuxiaowei
    user.script = Hans

java version "25.0.4" 2026-07-21 LTS
Java(TM) SE Runtime Environment Oracle GraalVM 25.0.4+7.1 (build 25.0.4+7-LTS-jvmci-b01)
Java HotSpot(TM) 64-Bit Server VM Oracle GraalVM 25.0.4+7.1 (build 25.0.4+7-LTS-jvmci-b01, mixed mode, sharing)
 xuxiaowei@xiaomi  ~  

JVM 参数

查看 Java 进程号

使用 ps 查看 Java 进程号

ps -ef | grep java
# 输出示例
root     16236 31497  1 Oct12 ?        01:09:02 java -jar /home/app.jar

使用 jps 查看 Java 进程号

  • jps$JAVA_HOME/bin/jps
命令 说明 输出示例
jps 输出:进程号、执行的 jar 包名称 3284915 xxx-0.0.0.jar
jps -l 输出:进程号、执行的 jar 包全路径 3284915 /software/xxx-0.0.0.jar

使用 jcmd 查看 Java 进程号

  • jcmd$JAVA_HOME/bin/jcmd
jcmd
# 输出示例
3284915 /software/xxx-0.0.0.jar

查看 JVM 参数

使用 jinfo 查看 JVM 参数

  • jinfo$JAVA_HOME/bin/jinfo
命令 说明 输出示例
jinfo -flags 进程号 查看进程信息 查看下方代码块
jinfo -flags 3284915
# 输出示例
Attaching to process ID 3284915, please wait...
Debugger attached successfully.
Server compiler detected.
JVM version is 25.351-b10
Non-default VM flags: -XX:CICompilerCount=3 -XX:InitialHeapSize=526385152 -XX:MaxHeapSize=8413773824 -XX:MaxNewSize=2804416512 -XX:MinHeapDeltaBytes=524288 -XX:NewSize=175112192 -XX:OldSize=351272960 -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseFastUnorderedTimeStamps -XX:+UseParallelGC
Command line:  
参数名称 描述
-XX:CICompilerCount=3 指定 JIT 编译器的线程数为 3
-XX:InitialHeapSize=526385152 初始堆大小为 502 MB
-XX:MaxHeapSize=8413773824 最大堆大小为 7.84 GB
-XX:MaxNewSize=2804416512 年轻代最大大小为 2.61 GB
-XX:MinHeapDeltaBytes=524288 堆大小调整的最小增量为 512 KB
-XX:NewSize=175112192 年轻代初始大小为 167 MB
-XX:OldSize=351272960 老年代初始大小为 335 MB
-XX:+UseCompressedClassPointers 启用压缩类指针
-XX:+UseCompressedOops 启用压缩普通对象指针
-XX:+UseFastUnorderedTimeStamps 使用快速无序时间戳
-XX:+UseParallelGC 使用并行垃圾收集器