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 跳过单元测试文件

 

posted @ 2018-08-09 13:30  夏天的尾巴%  阅读(147)  评论(0编辑  收藏  举报