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

本文已收录在Github关注我,紧跟本系列专栏文章,咱们下篇再续!

  • 🚀 魔都架构师 | 全网30W技术追随者
  • 🔧 大厂分布式系统/数据中台实战专家
  • 🏆 主导交易系统百万级流量调优 & 车联网平台架构
  • 🧠 AIGC应用开发先行者 | 区块链落地实践者
  • 🌍 以技术驱动创新,我们的征途是改变世界!
  • 👉 实战干货:编程严选网

0 前言

在 Maven 项目中,os.detected.classifier 是由 os-maven-plugin 检测操作系统类型并生成的一个属性,用于为不同平台选择合适的本地库。如果这个属性报错或“爆红”,通常是因为缺少插件声明或构建时无法识别你的操作系统。

1 解决方案

1.1 方法一:添加 os-maven-plugin 插件

确保你已正确声明 os-maven-plugin 插件:

<build>
    <plugins>
        <plugin>
            <groupId>kr.motd.maven</groupId>
            <artifactId>os-maven-plugin</artifactId>
            <version>1.6.2</version> <!-- 使用最新版本 -->
            <executions>
                <execution>
                    <phase>initialize</phase>
                    <goals>
                        <goal>detect</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

此插件会在 Maven 构建的初始化阶段检测操作系统,并设置 os.detected.classifier 属性,供其他依赖项使用(如需要平台相关的 native 库)。

点击执行:

控制台输出:

1.2 方法二:手动指定 os.detected.classifier

若你确定当前环境无需自动检测,或者想绕过这个问题,可手动在命令行中指定该属性。如:

mvn clean install -Dos.detected.classifier=your-classifier

其中 your-classifier 可能类似 osx-x86_64linux-x86_64windows-x86_64 的值,根据你的系统进行调整。

1.3 方法三:检查 Maven 环境

有时问题可能出在 Maven 环境本身。你可以尝试以下操作:

  1. 更新 Maven 到最新版

  2. 清理 Maven 缓存

    rm -rf ~/.m2/repository/
    
  3. 重新运行构建命令

    mvn clean install
    

本文由博客一文多发平台 OpenWrite 发布!

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 需要首先进行说明的是,为了方便打印日志,下面的代码都是引入了lombok之后的代码,因为我们需要使用到它的Slf4...
    Wannay阅读 3,000评论 0 1
  • 简介 概述 Maven 是一个项目管理和整合工具 Maven 为开发者提供了一套完整的构建生命周期框架 Maven...
    闽越布衣阅读 4,346评论 6 39
  • Maven日记01-简介 What is Maven? 【Maven】-> Java项目构建,管理,包管理工具配置...
    孙_dd90阅读 284评论 0 0
  • Maven文档地址:https://www.runoob.com/maven/maven-intellij.htm...
    yangfhit阅读 690评论 0 0
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,951评论 19 139