HMCL-docs/launcher/jvm-options-and-env.html
2026-03-15 12:44:04 +00:00

13 lines
16 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html><html lang="zh" class="no-js"><head><meta charset="utf-8"><title>JVM 选项与环境变量 - HMCL 文档</title><meta name="description" content="配置 JVM 参数和环境变量的说明"><meta property="og:type" content="article"><meta property="og:locale" content="zh"><meta property="og:site_name" content="HMCL 文档"><meta property="og:title" content="JVM 选项与环境变量"><meta property="og:url" content="https://docs.hmcl.net/launcher/jvm-options-and-env.html"><meta property="og:description" content="配置 JVM 参数和环境变量的说明"><meta property="article:published_time" content="2025-04-20T23:18:02+08:00"><link rel="canonical" href="https://docs.hmcl.net/launcher/jvm-options-and-env.html"><link href="/feed.xml" type="application/atom+xml" rel="alternate" title="HMCL 文档 Feed"><meta name="viewport" content="width=device-width, initial-scale=1.0"> <script> document.documentElement.className = document.documentElement.className.replace(/\bno-js\b/g, '') + ' js '; window.enable_copy_code_button = true; </script><link rel="stylesheet" href="/assets/css/main.css"><link rel="stylesheet" href="/assets/lib/fontawesome/css/all.min.css"> <noscript><link rel="stylesheet" href="/assets/lib/fontawesome/css/all.min.css"></noscript> <script src="/assets/js/settings.js"></script> <script src="/assets/js/theme.js"></script><link rel="shortcut icon" href="/favicon.ico"><link rel="stylesheet" id="skin"></head><body class="layout--document" dir="ltr"><nav class="skip-links"><ul><li><a href="#site-nav" class="screen-reader-shortcut">转到主导航栏</a></li><li><a href="#main" class="screen-reader-shortcut">转到内容</a></li><li><a href="#footer" class="screen-reader-shortcut">转到底部</a></li></ul></nav><div class="masthead"><div class="masthead__inner-wrap"><div class="masthead__menu"><nav id="site-nav" class="greedy-nav"> <a class="site-logo" href="/"><img src="/assets/img/hmcl.png" alt="HMCL 文档"></a> <a class="site-title" href="/"> HMCL 文档 </a><ul class="visible-links"><li class="masthead__menu-item"> <a href="/settings.html" >设置</a></li></ul><button class="greedy-nav__toggle hidden" type="button"> <span class="visually-hidden">切换菜单</span><div class="navicon"></div></button><ul class="hidden-links hidden"></ul></nav></div></div></div><div class="initial-content"><div id="main" role="main"><div class="sidebar sticky"><nav class="nav__list"> <input id="ac-toc" name="accordion-toc" type="checkbox" /> <label for="ac-toc">切换菜单</label><ul class="nav__items"><li> <span class="nav__sub-title">问题集合</span><ul><li><a href="/faq.html">常见问题</a></li><li><a href="/launcher/">启动器使用相关</a></li><li><a href="/modpack/">整合包帮助</a></li><li><a href="/multiplayer/">多人联机帮助</a></li></ul></li><li> <span class="nav__sub-title">使用者帮助</span><ul><li><a href="/launcher/isolation.html">版本隔离</a></li><li><a href="/launcher/offline-skin.html">设置离线皮肤</a></li><li><a href="/launcher/auto-installing.html">HMCL 的自动安装使用教程</a></li><li><a href="/launcher/shader.html">安装光影</a></li><li><a href="/launcher/set-item-details.html">设置项详解</a></li></ul></li><li> <span class="nav__sub-title">开发者帮助</span><ul><li><a href="/launcher/datapack.html">制作 HMCL 格式的数据包</a></li><li><a href="/modpack/serverpack.html">制作整合包</a></li><li><a href="/launcher/authlib-injector.html">添加默认 authlib-injector 验证服务器</a></li></ul></li><li> <span class="nav__sub-title">更新日志</span><ul><li><a href="/changelog/stable.html">稳定版</a></li><li><a href="/changelog/dev.html">开发版</a></li></ul></li><li> <span class="nav__sub-title">其他</span><ul><li><a href="/eula/hmcl.html">用户协议</a></li><li><a href="/contribution.html">贡献指南</a></li><li><a href="https://hmcl.huangyuhui.net">项目官网</a></li><li><a href="https://github.com/HMCL-dev/HMCL">项目仓库</a></li><li><a href="https://github.com/HMCL-dev/HMCL-docs">文档仓库</a></li></ul></li></ul></nav></div><article class="page" itemscope itemtype="https://schema.org/CreativeWork"><meta itemprop="headline" content="JVM 选项与环境变量"><meta itemprop="description" content="配置 JVM 参数和环境变量的说明"><meta itemprop="datePublished" content="2025-04-20T23:18:02+08:00"><div class="page__inner-wrap"><header><h1 id="page-title" class="page__title" itemprop="headline"> <a href="https://docs.hmcl.net/launcher/jvm-options-and-env.html" itemprop="url">JVM 选项与环境变量 </a></h1></header><section class="page__content" itemprop="text"><aside class="sidebar__right sticky"><nav class="toc"><header><h4 class="nav__title"><i class="fas fa-file-alt"></i> 目录</h4></header><ul class="toc__menu"><li><a href="#jvm-选项">JVM 选项</a></li><li><a href="#环境变量">环境变量</a></li><li><a href="#如何使用-jvm-选项">如何使用 JVM 选项</a><ul><li><a href="#方法一直接在命令行中添加">方法一:直接在命令行中添加</a></li><li><a href="#方法二创建启动脚本">方法二:创建启动脚本</a></li><li><a href="#使用注意事项">使用注意事项</a></li></ul></li><li><a href="#如何使用环境变量">如何使用环境变量</a><ul><li><a href="#windows-设置环境变量">Windows 设置环境变量</a></li><li><a href="#linuxmacos-设置环境变量">Linux/macOS 设置环境变量</a></li><li><a href="#使用注意事项-1">使用注意事项</a></li></ul></li></ul></nav></aside><img src="https://hits.zkitefly.eu.org/?tag=https%3A%2F%2Fdocs.hmcl.net%2Flauncher%2Fjvm-options-and-env.html" alt="Hits" decoding="async"><div class="notice--info"><p>本文由 未署名用户 创建。</p></div><h2 id="jvm-选项">JVM 选项</h2><p>HMCL 提供了一些 JVM 选项用于调试目的。你可以通过在启动 HMCL 时添加这些参数来使用这些功能。</p><table><thead><tr><th>参数</th><th>描述</th></tr></thead><tbody><tr><td><code class="language-plaintext highlighter-rouge">-Dhmcl.home=&lt;path&gt;</code></td><td>覆盖 HMCL 全局数据文件夹路径</td></tr><tr><td><code class="language-plaintext highlighter-rouge">-Dhmcl.dir=&lt;path&gt;</code></td><td>覆盖 HMCL 工作路径下的 .hmcl 文件夹路径</td></tr><tr><td><code class="language-plaintext highlighter-rouge">-Dhmcl.self_integrity_check.disable=true</code></td><td>禁用启动器更新时的本体完整性检查</td></tr><tr><td><code class="language-plaintext highlighter-rouge">-Dhmcl.bmclapi.override=&lt;url&gt;</code></td><td>自定义 BMCLAPI 的 API Root 地址(默认为 <code class="language-plaintext highlighter-rouge">https://bmclapi2.bangbang93.com</code></td></tr><tr><td><code class="language-plaintext highlighter-rouge">-Dhmcl.font.override=&lt;font family&gt;</code></td><td>指定启动器使用的字族</td></tr><tr><td><code class="language-plaintext highlighter-rouge">-Dhmcl.version.override=&lt;version&gt;</code></td><td>手动指定启动器版本号</td></tr><tr><td><code class="language-plaintext highlighter-rouge">-Dhmcl.update_source.override=&lt;url&gt;</code></td><td>自定义 HMCL 更新源地址</td></tr><tr><td><code class="language-plaintext highlighter-rouge">-Dhmcl.authlibinjector.location=&lt;path&gt;</code></td><td>指定本地 authlib-injector 路径,不从网络下载</td></tr><tr><td><code class="language-plaintext highlighter-rouge">-Dhmcl.openjfx.repo=&lt;maven repository url&gt;</code></td><td>添加用于下载 OpenJFX 的自定义 Maven 仓库地址(默认为 <code class="language-plaintext highlighter-rouge">https://repo1.maven.org/maven2</code></td></tr><tr><td><code class="language-plaintext highlighter-rouge">-Dhmcl.native.encoding=&lt;encoding&gt;</code></td><td>指定系统原生编码</td></tr><tr><td><code class="language-plaintext highlighter-rouge">-Dhmcl.microsoft.auth.id=&lt;App ID&gt;</code></td><td>自定义 Microsoft OAuth 应用程序 ID</td></tr><tr><td><code class="language-plaintext highlighter-rouge">-Dhmcl.microsoft.auth.secret=&lt;App Secret&gt;</code></td><td>自定义 Microsoft OAuth 应用程序密钥</td></tr><tr><td><code class="language-plaintext highlighter-rouge">-Dhmcl.curseforge.apikey=&lt;key&gt;</code></td><td>自定义 CurseForge API 密钥</td></tr><tr><td><code class="language-plaintext highlighter-rouge">-Dhmcl.discoapi.override=&lt;url&gt;</code></td><td>自定义 DiscoAPI 的 API Root 地址(默认为 <code class="language-plaintext highlighter-rouge">https://api.foojay.io/disco/v3.0</code></td></tr><tr><td><code class="language-plaintext highlighter-rouge">-Dhmcl.native.backend=&lt;auto/jna/none&gt;</code></td><td>指定 HMCL 的本地后端类型。可选值:<br>- <code class="language-plaintext highlighter-rouge">auto</code>自动选择Windows 7+ 使用 JNA其他系统不使用<br>- <code class="language-plaintext highlighter-rouge">jna</code>:强制使用 JNA如果 JNA 不可用会抛出异常)<br>- <code class="language-plaintext highlighter-rouge">none</code>:禁用 JNA<br>默认值:<code class="language-plaintext highlighter-rouge">auto</code></td></tr><tr><td><code class="language-plaintext highlighter-rouge">-Dhmcl.hardware.fastfetch=&lt;true/false&gt;</code></td><td>是否使用 fastfetch 获取设备信息。默认值:<code class="language-plaintext highlighter-rouge">true</code></td></tr></tbody></table><h2 id="环境变量">环境变量</h2><p>HMCL/HMCLauncher 也支持一些环境变量来配置启动器的行为。你可以在系统环境变量中添加这些变量。</p><table><thead><tr><th>参数</th><th>描述</th></tr></thead><tbody><tr><td><code class="language-plaintext highlighter-rouge">HMCL_JAVA_OPTS</code></td><td>自定义 HMCLauncher 所使用的 JVM 启动参数(默认为 <code class="language-plaintext highlighter-rouge">-XX:MinHeapFreeRatio=5 -XX:MaxHeapFreeRatio=15</code><code class="language-plaintext highlighter-rouge">-Xmx1G -XX:MinHeapFreeRatio=5 -XX:MaxHeapFreeRatio=15</code></td></tr><tr><td><code class="language-plaintext highlighter-rouge">HMCL_JAVA_HOME</code></td><td>自定义 HMCLauncher 所使用的 Java 路径</td></tr><tr><td><code class="language-plaintext highlighter-rouge">HMCL_FONT</code></td><td>指定启动器使用的字族</td></tr><tr><td><code class="language-plaintext highlighter-rouge">HMCL_JRES</code></td><td>添加 HMCL 所使用的 Java 路径,支持写入多个路径</td></tr></tbody></table><h2 id="如何使用-jvm-选项">如何使用 JVM 选项</h2><p>你可以通过以下几种方式使用这些 JVM 选项。</p><h3 id="方法一直接在命令行中添加">方法一:直接在命令行中添加</h3><p>在启动 HMCL 时通过命令行添加参数,例如:</p><div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>java <span class="nt">-Dhmcl</span>.home<span class="o">=</span><span class="s2">"D:/Games/HMCL"</span> <span class="nt">-jar</span> HMCL.jar
</code></pre></div></div><h3 id="方法二创建启动脚本">方法二:创建启动脚本</h3><ol><li>Windows 用户可以创建 <code class="language-plaintext highlighter-rouge">.cmd</code> 文件:<div class="language-batch highlighter-rouge"><div class="highlight"><pre class="highlight"><code>@echo <span class="na">off</span>
<span class="kd">java</span> <span class="na">-Dhmcl</span>.font.override<span class="o">=</span><span class="s2">"Microsoft YaHei"</span> <span class="na">-jar </span><span class="kd">HMCL</span>.jar
<span class="nb">pause</span>
</code></pre></div></div></li><li>Linux/macOS 用户可以创建 <code class="language-plaintext highlighter-rouge">.sh</code> 文件:<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="c">#!/bin/bash</span>
java <span class="nt">-Dhmcl</span>.font.override<span class="o">=</span><span class="s2">"Noto Sans CJK SC"</span> <span class="nt">-jar</span> HMCL.jar
</code></pre></div></div></li></ol><h3 id="使用注意事项">使用注意事项</h3><ul><li>可以同时使用多个参数,只需要用空格分隔</li><li>包含空格的参数值需要用半角引号包裹</li><li>确保 JVM 参数位于 <code class="language-plaintext highlighter-rouge">-jar HMCL.jar</code> 之前</li></ul><h2 id="如何使用环境变量">如何使用环境变量</h2><h3 id="windows-设置环境变量">Windows 设置环境变量</h3><ol><li>右键点击“此电脑”/“这台电脑”/“我的电脑”,选择“属性”</li><li>点击“高级系统设置”</li><li>点击“环境变量”</li><li>在“用户变量”或“系统变量”中点击“新建”</li><li>输入变量名(如 <code class="language-plaintext highlighter-rouge">HMCL_JAVA_HOME</code>)和变量值</li><li>点击“确定”保存</li></ol><p>示例值:</p><div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>变量名: HMCL_JAVA_HOME
变量值: C:\Program Files\Java\jdk-17
</code></pre></div></div><h3 id="linuxmacos-设置环境变量">Linux/macOS 设置环境变量</h3><ol><li>编辑你的 Shell 配置文件(比如 <code class="language-plaintext highlighter-rouge">~/.bashrc</code><code class="language-plaintext highlighter-rouge">~/.zshrc</code> 等)</li><li>添加 <code class="language-plaintext highlighter-rouge">export</code> 语句:</li></ol><div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nb">export </span><span class="nv">HMCL_JAVA_HOME</span><span class="o">=</span><span class="s2">"/usr/lib/jvm/java-17-openjdk"</span>
<span class="nb">export </span><span class="nv">HMCL_JAVA_OPTS</span><span class="o">=</span><span class="s2">"-XX:MinHeapFreeRatio=5 -XX:MaxHeapFreeRatio=15"</span>
</code></pre></div></div><ol><li>保存文件并重新加载配置:<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nb">source</span> ~/.bashrc <span class="c"># 或 `source ~/.zshrc`</span>
</code></pre></div></div></li></ol><h3 id="使用注意事项-1">使用注意事项</h3><ul><li>设置环境变量后需要重启 HMCL 才能生效</li><li>如果同时设置了 JVM 参数和环境变量JVM 参数优先级更高</li><li>Windows 用户注意使用半角分号(;)分隔多个路径</li><li>Linux/macOS 用户注意使用半角冒号(:)分隔多个路径</li></ul></section><footer class="page__meta"><p class="page__date"><strong><i class="fas fa-fw fa-calendar-alt" aria-hidden="true"></i> 更新时间:</strong> <time class="dt-published" datetime="2025-04-20T23:18:02+08:00">2025-04-20</time></p></footer><nav class="pagination"> <a href="/launcher/use-password-login-microsoft-account.html" class="pagination--pager" title="使用密码登录微软账户">上一页</a> <a href="/launcher/auto-installing.html" class="pagination--pager" title="自动安装与模组下载简介">下一页</a></nav></div></article></div></div><div id="footer" class="page__footer"><footer><div class="page__footer-follow"><ul class="social-icons"><li><strong>关注:</strong></li><li><a href="https://github.com/HMCL-dev/HMCL" rel="nofollow noopener noreferrer"><i class="fab fa-fw fa-github" aria-hidden="true"></i> Github</a></li><li><a href="https://beian.miit.gov.cn" rel="nofollow noopener noreferrer"><i class="fas fa-link" aria-hidden="true"></i> 粤ICP备18071565号</a></li><li><a href="/feed.xml"><i class="fas fa-fw fa-rss-square" aria-hidden="true"></i> Feed</a></li></ul></div><div class="page__footer-copyright">&copy; 2026 <a href="mailto:hmcl@huangyuhui.net">huanghongxun</a>. 技术来自于 <a href="https://jekyllrb.com" rel="nofollow">Jekyll</a> &amp; <a href="https://mademistakes.com/work/jekyll-themes/minimal-mistakes/" rel="nofollow">Minimal Mistakes</a>.</div></footer></div><script src="/assets/js/main.min.js"></script> <script src="/assets/js/plugins/jquery.auto-redirect.js"></script></body></html>