Maven知识点积累二
①maven常用命令:
mvn clean:清除target下编译生成的class文件
mvn compile:编译
mvn package:打包放到target下
mvn install:打包并放到本地仓库
mvn deploy:打包并放到私服上。
mvn source:把项目源码放到私服上。
放到私服上需要在setting.xml(<servers></servers>标签中)或者pom.xml中配私服,配置时需要配上私服的用户名,密码,才能放上去。
install放到本地仓库的包,除了生成的jar,还有pom文件,如下:
<!--install打印ID日志:--> [INFO] Installing C:\workspaceAll\eclipseWorkspace\activiti-demo\target\activiti-demo-0.0.1-SNAPSHOT.jar to G:\.m2\repository\com\example\activiti-demo\0.0.1-SNAPSHOT\activiti-demo-0.0.1-SNAPSHOT.jar [INFO] Installing C:\workspaceAll\eclipseWorkspace\activiti-demo\pom.xml to G:\.m2\repository\com\example\activiti-demo\0.0.1-SNAPSHOT\activiti-demo-0.0.1-SNAPSHOT.pom [INFO] Installing C:\workspaceAll\eclipseWorkspace\activiti-demo\target\activiti-demo-0.0.1-SNAPSHOT-jar-with-dependencies.jar to G:\.m2\repository\com\example\activiti-demo\0.0.1-SNAPSHOT\activiti-demo-0.0.1-SNAPSHOT-jar-with-dependencies.jar
放到本地仓库的:
项目打包放到私服,不仅仅是把打成的jar包copy过去,而是上图中生成的文件都需要放。
要么配置好,deploy命令直接放到私服上。要么在本地install,把生成的整个包都传到私服上。
如果放到私服的包只有jar,那么使用私服的时候就会报错。因为需要根据pom文件去查找下载引用的jar, 如果没有pom,jar中引用的包不会下载,项目就会报错。
比如:spring-boot-starter-thymeleaf这个jar中引用了thymeleaf:
1 <dependency> 2 <groupId>org.thymeleaf</groupId> 3 <artifactId>thymeleaf</artifactId> 4 <version>${thymeleaf.version}</version> 5 </dependency>
但是私服上spring-boot-starter-thymeleaf这个包只有jar,没有pom文件。所以,项目在download时,就只下载spring-boot-starter-thymeleaf,不会下载thymeleaf。导致项目报错。
打开本地仓库spring-boot-starter-thymeleaf所在位置:
这个pom文件的内容是私服自动生成的,不含depencies的:
1 <?xml version="1.0" encoding="UTF-8"?> 2 <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 4 <modelVersion>4.0.0</modelVersion> 5 <groupId>org.springframework.boot</groupId> 6 <artifactId>spring-boot-starter-thymeleaf</artifactId> 7 <version>1.5.9.RELEASE</version> 8 <description>POM was created by Sonatype Nexus</description> 9 </project>
无法根据这个pom去下载依赖的jar
②发布版本,示例:2.7.1。2是大版本,功能有大变动。7是小功能升级。1是修复小bug发布的版本
③maven项目中的package.cmd文件:
1 call mvn -Dmaven.test.skip=true clean package 2 pause
-Dmaven.test.skip=true 跳过单元测试文件
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏
2015-08-09 svn的安装方法
2015-08-09 在powerDesigner中通过SQL生成pdm