5.Maven工程之间如何相互调用

五.Maven工程之间相互调用

通过Maven命令自动创建约定的目录结构

1.创建工程

  • 进入到存放Maven工程的工作空间中
    • 该工作空间必须是一个目录,不能是一个Maven项目
    • 当前目录中不能存在pom.xml文件
  • 在该目录下的终端中执行命令构建Maven工程
    • mvn archetype:generate
    • 命令执行完成之后会出现许多的选项
      • 不同的远程仓库出现的选项的序号是不一样的
      • 这些选项表示的是各种Maven的骨架模型
      • 每一种选项都会提供一个默认,直接回车即表示选择使用默认值
      • 根据默认值创建出来的是一个Java工程
      • 其骨架模型为:maven-archetype-quickstart
    • 选择对应的骨架模型之后,会要求用户输入一些必备信息
      • groupId:需要用户主动指定
      • artifactId:需要用户主动指定
      • version:可以主动指定,也可以使用提供的默认
      • package:指定当前工程中的包结构,默认使用的与groupId一致
    • 当所有选项输入完毕之后,会需要确认这些信息是否正确
      • 如果确定了,输入Y即可

2.调用其他Maven工程

2-1 HelloFriend
package com.itany.maven;

public class HelloFriend{
	
	public String sayHelloToFriend(String name){
		HelloMaven hm = new HelloMaven();
		String result = hm.sayHello()+",I am "+name;
		return result;
	}
	
}
2-2 TestFriend
package com.itany.maven;

import org.junit.Test;
import static org.junit.Assert.*;

public class TestFriend{
	
	@Test
	public void test(){
		HelloFriend hf = new HelloFriend();
		String result = hf.sayHelloToFriend("admin");
		assertEquals("Hello Maven, I am admin",result);
	}
	
}
2-3 pom.xml

当调用另一个Maven工程的时候

会根据配置中的依赖去本地仓库进行查找

如果没有找到,会去远程仓库进行查询

如果本地仓库与远程仓库均没有找到,将会报错

因此,如果需要调用对应的Maven工程

必须将对应的Maven工程安装到仓库中才能被调用

<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>com.itany.maven</groupId>
  <artifactId>HelloFriend</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>HelloFriend</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.12</version>
      <scope>test</scope>
    </dependency>
	
	<dependency>
	   <groupId>com.itany.maven</groupId>
		<artifactId>hello</artifactId>
		<version>1.0-SNAPSHOT</version>
	</dependency>
	
	
  </dependencies>
</project>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值