鹅叨叨 發表於 2025-6-17 13:58:00

解决 Maven os.detected.classifier 报错:快速修复指南

<p>本文已收录在Github,<strong>关注我,紧跟本系列专栏文章,咱们下篇再续!</strong></p>
<ul>
<li>🚀 魔都架构师 | 全网30W技术追随者</li>
<li>🔧 大厂分布式系统/数据中台实战专家</li>
<li>🏆 主导交易系统百万级流量调优 &amp; 车联网平台架构</li>
<li>🧠 AIGC应用开发先行者 | 区块链落地实践者</li>
<li>🌍 以技术驱动创新,我们的征途是改变世界!</li>
<li>👉 实战干货:编程严选网</li>
</ul>
<h2 id="0-前言">0 前言</h2>
<p>在 Maven 项目中,<code>os.detected.classifier</code> 是由 <code>os-maven-plugin</code> 检测操作系统类型并生成的一个属性,用于为不同平台选择合适的本地库。如果这个属性报错或“爆红”,通常是因为缺少插件声明或构建时无法识别你的操作系统。</p>
<p><img alt="" loading="lazy" src="https://p.ipic.vip/ybxpn4.png" class="lazyload"></p>
<h2 id="1-解决方案">1 解决方案</h2>
<h3 id="11-方法一添加-os-maven-plugin-插件">1.1 方法一:添加 <code>os-maven-plugin</code> 插件</h3>
<p>确保你已正确声明 <code>os-maven-plugin</code> 插件:</p>
<pre><code class="language-xml">&lt;build&gt;
    &lt;plugins&gt;
      &lt;plugin&gt;
            &lt;groupId&gt;kr.motd.maven&lt;/groupId&gt;
            &lt;artifactId&gt;os-maven-plugin&lt;/artifactId&gt;
            &lt;version&gt;1.6.2&lt;/version&gt; &lt;!-- 使用最新版本 --&gt;
            &lt;executions&gt;
                &lt;execution&gt;
                  &lt;phase&gt;initialize&lt;/phase&gt;
                  &lt;goals&gt;
                        &lt;goal&gt;detect&lt;/goal&gt;
                  &lt;/goals&gt;
                &lt;/execution&gt;
            &lt;/executions&gt;
      &lt;/plugin&gt;
    &lt;/plugins&gt;
&lt;/build&gt;
</code></pre>
<p>此插件会在 Maven 构建的初始化阶段检测操作系统,并设置 <code>os.detected.classifier</code> 属性,供其他依赖项使用(如需要平台相关的 native 库)。</p>
<p>点击执行:</p>
<p><img alt="" loading="lazy" src="https://img2024.cnblogs.com/other/1097393/202506/1097393-20250617135813124-346527798.png" class="lazyload"></p>
<p>控制台输出:</p>
<p><img alt="" loading="lazy" src="https://img2024.cnblogs.com/other/1097393/202506/1097393-20250617135813452-960206317.png" class="lazyload"></p>
<h3 id="12-方法二手动指定-osdetectedclassifier">1.2 方法二:手动指定 <code>os.detected.classifier</code></h3>
<p>若你确定当前环境无需自动检测,或者想绕过这个问题,可手动在命令行中指定该属性。如:</p>
<pre><code class="language-bash">mvn clean install -Dos.detected.classifier=your-classifier
</code></pre>
<p>其中 <code>your-classifier</code> 可能类似 <code>osx-x86_64</code>、<code>linux-x86_64</code> 或 <code>windows-x86_64</code> 的值,根据你的系统进行调整。</p>
<h3 id="13-方法三检查-maven-环境">1.3 方法三:检查 Maven 环境</h3>
<p>有时问题可能出在 Maven 环境本身。你可以尝试以下操作:</p>
<ol>
<li>
<p><strong>更新 Maven</strong> 到最新版</p>
</li>
<li>
<p><strong>清理 Maven 缓存</strong>:</p>
<pre><code class="language-bash">rm -rf ~/.m2/repository/
</code></pre>
</li>
<li>
<p><strong>重新运行构建命令</strong>:</p>
<pre><code class="language-bash">mvn clean install
</code></pre>
</li>
</ol>
<blockquote>
<p>本文由博客一文多发平台 OpenWrite 发布!</p>
</blockquote><br><br>
来源:https://www.cnblogs.com/JavaEdge/p/18932842
頁: [1]
查看完整版本: 解决 Maven os.detected.classifier 报错:快速修复指南