[关闭]
@EggGump 2018-07-02T15:48:15.000000Z 字数 2278 阅读 379

maven准备工作

spring,maven相关

1将bin加入到path

2修改conf里的配置文件中localrepository字段,确定存放jar包文件夹

maven生命周期

mvn compile 编译
mvn test 测试,生成报告,也包括编译
mvn clean 清理,清理掉生成的东西
mvn package 打包,生成jar包
mvn install 将生成的jar包放入repository,clean时不会清除

maven继承

第一个工程的pom

  1. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  2. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  3. <modelVersion>4.0.0</modelVersion>
  4. <groupId>com.itheima11.maven</groupId>
  5. <artifactId>Base</artifactId>
  6. <version>0.0.1-SNAPSHOT</version>
  7. <packaging>pom</packaging>
  8. <name>Base</name>
  9. <url>http://maven.apache.org</url>
  10. <properties>
  11. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  12. </properties>
  13. <dependencies>
  14. <dependency>
  15. <groupId>junit</groupId>
  16. <artifactId>junit</artifactId>
  17. <version>4.9</version>
  18. <scope>test</scope>
  19. </dependency>
  20. <dependency>
  21. <groupId>com.itheima11.maven</groupId>
  22. <artifactId>HelloFriend</artifactId>
  23. <version>0.0.1-SNAPSHOT</version>
  24. </dependency>
  25. </dependencies>
  26. </project>

第二个工程的pom

  1. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  2. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  3. <modelVersion>4.0.0</modelVersion>
  4. <groupId>com.itheima11.maven</groupId>
  5. <artifactId>HelloBase</artifactId>
  6. <version>0.0.1-SNAPSHOT</version>
  7. <packaging>jar</packaging>
  8. <parent>
  9. <groupId>com.itheima11.maven</groupId>
  10. <artifactId>Base</artifactId>
  11. <version>0.0.1-SNAPSHOT</version>
  12. </parent>
  13. <name>HelloBase</name>
  14. <url>http://maven.apache.org</url>
  15. <properties>
  16. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  17. </properties>
  18. <dependencies>
  19. </dependencies>
  20. </project>

第一个工程的< package>里是jar改为pom,第二个工程可以通过< parent>标签继承,< parent>标签只能继承pom。这时,第一个工程中的所有的依赖会被默认加到第二个工程中。注意,第一个工程里面一般不写类,因为第一个工程里面的类是不会被加到第二个工程的依赖中的。

坐标

  1. <parent>
  2. <groupId>com.itheima11.maven</groupId>
  3. <artifactId>Base</artifactId>
  4. <version>0.0.1-SNAPSHOT</version>
  5. <scope>test</scope>
  6. </parent>

< groupId>:工程名是一个文件夹,以上标示在仓库下/com/itheima11/maven文件夹是工程文件夹
< artifactId>:项目名,它是工程文件夹下的一个子文件夹
< version>版本名,它是项目名文件夹下的了个文件夹。
最后我们的jar包放在version这个文件夹下,它的名子由artifactId 和version 拼起来,如上,名字就是:
Base-0.0.1-SNAPSHOT.jar
scope:作用范围,默认为compile,test表示只中mvn test命令时起作用

仓库

配置私服,打开settings.xml中的mirror和profile
将坐标加入依赖后,会先在本地找,没有就在私服(如果有私服)或在互联网上找。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注