在工作中碰到的问题,在idea对maven项目进行打包时出现了一个错误

经过在网上查找了以大堆后,发现都说是maven工具中setting.xml的格式存在问题,修改下格式即可,然而看了一圈还是没有找到问题的所在,因为我的setting.xml的格式和内容是没有问题的。
然后将在idea中打包的那条命令复制出来,在cmd终端中直接跑了一遍,发现底下多报了一行错,在idea中没有底下那行错误,于是,定位到了问题,那就解决问题,看了下报错的路径,我在idea的setting中设置的maven配置文件setting.xml并没有设置在该路径在,然而问题是该路径报错了。
现在采用的解决方案是将正确的setting.xml配置文件复制到该路径下,问题解决。
2025-08-07 start:
今天使用https://github.com/YunaiV/ruoyi-vue-pro为基础项目进行打包的时候,出现了一个问题,我直接在server模块直接通过springboot插件进行打包,
但同时这两个模块又依赖了system模块和infra模块,而且这两个模块又同时携带了springboot的打包插件,然后我使用server进行启动的时候就会出现一个问题,system模块上的一个依赖类总是找不到的问题。
在本地的maven仓库和项目的仓库都进行了查找都能够找到相关依赖的类,原因在于依赖的模块不能够有springboot的打包插件,因为要需要作为依赖模块导入到springboot包中。
end
2025-09-13 start:
复制了别人的一个jar到本地的mavn仓库中,但是在idea中却不能正确的导入使用,一直在从远程仓库中拉取
| 问题可能原因 | 主要解决方案 |
|---|---|
存在记录远程仓库信息的 _remote.repositories 文件 |
删除该文件(优先尝试) |
| IDEA的Maven缓存未及时更新或存在异常 | 清理IDEA缓存并重启 |
| Maven未正确指向本地仓库,或本地仓库路径配置有误 | 检查Maven配置 |
阿里云镜像策略为 mirrorOf=central 且依赖不在中央仓库 |
在POM中添加包含该依赖的正确仓库(如果已知) |
end
2025-09-27 start:
打包单体可以带上参数-Plib来打包
mvn clean install -DskipTests -Plib
end
2025-10-11 start:
springboot pom打包插件
<build>
<!-- 设置构建的 jar 包名 -->
<finalName>${project.artifactId}</finalName>
<plugins>
<!-- 打包 -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring.boot.version}</version>
<executions>
<execution>
<goals>
<goal>repackage</goal> <!-- 将引入的 jar 打入其中 -->
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
end
2025-10-13 start:
<!-- 定义profile:激活后打包为Spring Boot可执行JAR(微服务启动用) -->
<profiles>
<profile>
<id>microservice</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<build>
<!-- 设置构建的 jar 包名 -->
<finalName>${project.artifactId}</finalName>
<plugins>
<!-- 打包 -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring.boot.version}</version>
<executions>
<execution>
<goals>
<goal>repackage</goal> <!-- 将引入的 jar 打入其中 -->
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<!--
-Plib 时,打包为普通JAR(作为依赖)
-->
<profile>
<id>lib</id>
</profile>
</profiles>
end
2026-01-15 start:
使用${revision}来管理子模块的版本号
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>xyz.haijin</groupId>
<artifactId>haijinplatform</artifactId>
<version>${revision}</version>
<packaging>pom</packaging>
<modules>
<module>m1</module>
<module>m2</module>
<module>common</module>
</modules>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.5.9</version>
<relativePath/>
</parent>
<properties>
<revision>1.0-SNAPSHOT</revision>
<project.version>${revision}</project.version>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>17</java.version>
<hutool.version>5.8.43</hutool.version>
<spring.boot.version>3.5.9</spring.boot.version>
<commons-codec.version>1.20.0</commons-codec.version>
<commons-pool2.version>2.13.1</commons-pool2.version>
<commons-lang3.version>3.20.0</commons-lang3.version>
<common.version>${project.version}</common.version>
<mysql.version>9.5.0</mysql.version>
<druid.version>1.2.27</druid.version>
<mybatis-plus.version>3.5.16</mybatis-plus.version>
</properties>
<dependencyManagement>
</dependencyManagement>
<build>
<plugins>
<!-- Flatten Maven Plugin: 支持使用 ${revision} 等属性 -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>flatten-maven-plugin</artifactId>
<version>1.5.0</version>
<configuration>
<updatePomFile>true</updatePomFile>
<flattenMode>resolveCiFriendliesOnly</flattenMode>
</configuration>
<executions>
<execution>
<id>flatten</id>
<phase>process-resources</phase>
<goals>
<goal>flatten</goal>
</goals>
</execution>
<execution>
<id>flatten.clean</id>
<phase>clean</phase>
<goals>
<goal>clean</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
end