zoukankan      html  css  js  c++  java
  • 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:workspaceAlleclipseWorkspaceactiviti-demo	argetactiviti-demo-0.0.1-SNAPSHOT.jar to G:.m2
    epositorycomexampleactiviti-demo.0.1-SNAPSHOTactiviti-demo-0.0.1-SNAPSHOT.jar
    [INFO] Installing C:workspaceAlleclipseWorkspaceactiviti-demopom.xml to G:.m2
    epositorycomexampleactiviti-demo.0.1-SNAPSHOTactiviti-demo-0.0.1-SNAPSHOT.pom
    [INFO] Installing C:workspaceAlleclipseWorkspaceactiviti-demo	argetactiviti-demo-0.0.1-SNAPSHOT-jar-with-dependencies.jar to G:.m2
    epositorycomexampleactiviti-demo.0.1-SNAPSHOTactiviti-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 跳过单元测试文件

  • 相关阅读:
    WPF中ListBoxItem绑定一个UserControl的学习
    Server.Transfer和Response.Redirect的区别
    4个程序员的一天
    (转)让ADO.NET Entity Framework支持Oracle数据库
    IIS操作类
    HttpHandler与HttpModule区别
    网站性能优化的34条黄金法则
    oracle9i/10g/11g各种下载
    WCF简要介绍
    软件系统的稳定性
  • 原文地址:https://www.cnblogs.com/mySummer/p/9448366.html
Copyright © 2011-2022 走看看