maven配置阿里云镜像的两种方式

maven配置阿里云镜像的两种方式

配置方式

第一种方式(settings.xml文件)

在mirrors节点下加入一个新的mirror节点,配置阿里镜像地址,完整配置如下:

<mirrors>
 	 <mirror>
      <id>alimavenid>
      <name>aliyun mavenname>
      <url>http://maven.aliyun.com/nexus/content/groups/public/url>
      <mirrorOf>centralmirrorOf>        
    mirror>
  mirrors>

第二种方式(pom.xml方式)

修改项目pom.xml,在repositories节点下加入repository节点,配置阿里镜像地址,完整配置如下:

此配置参考renren-genertor项目的pom.xml配置,项目网址:https://gitee.com/renrenio/renren-generator

<repositories>
		<repository>
			<id>publicid>
			<name>aliyun nexusname>
			<url>http://maven.aliyun.com/nexus/content/groups/public/url>
			<releases>
				<enabled>trueenabled>
			releases>
		repository>
	repositories>
	<pluginRepositories>
		<pluginRepository>
			<id>publicid>
			<name>aliyun nexusname>
			<url>http://maven.aliyun.com/nexus/content/groups/public/url>
			<releases>
				<enabled>trueenabled>
			releases>
			<snapshots>
				<enabled>falseenabled>
			snapshots>
		pluginRepository>
	pluginRepositories>

区别

第一种方式是全局的方式配置

第二种方式只能当前项目生效

解决的问题

问题在线

最近公司配置了maven私服仓库,导致我们项目所需要的依赖需要从私服中拉取,我idea配置maven仓库地址也是私服的,加上如果是内网开发,那么自己笔记本又不是只在公司使用,如果自己学习还要切换maven仓库,相当麻烦

示例测试

我们新建一个springboot项目,定义一个本地没有的springboot版本,在外网使用私服仓库地址打包

maven配置阿里云镜像的两种方式_第1张图片

报错原因:因为我们使用的外网,所以不能拉去私服仓库依赖

解决方案

适应以上的第二种方式(pom.xml方式)

在pom.xml中配置阿里云镜像

pom.xml配置如下:


<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0modelVersion>
    <groupId>com.examplegroupId>
    <artifactId>springboot-demoartifactId>
    <version>0.0.1-SNAPSHOTversion>
    <name>springboot-demoname>
    <description>Demo project for Spring Bootdescription>

    <properties>
        <java.version>1.8java.version>
        <project.build.sourceEncoding>UTF-8project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8project.reporting.outputEncoding>
        <spring-boot.version>2.2.5.RELEASEspring-boot.version>
    properties>

    <dependencies>
       省略。。。
    dependencies>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.bootgroupId>
                <artifactId>spring-boot-dependenciesartifactId>
                <version>${spring-boot.version}version>
                <type>pomtype>
                <scope>importscope>
            dependency>
        dependencies>
    dependencyManagement>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.pluginsgroupId>
                <artifactId>maven-compiler-pluginartifactId>
                <version>3.8.1version>
                <configuration>
                    <source>1.8source>
                    <target>1.8target>
                    <encoding>UTF-8encoding>
                configuration>
            plugin>
            <plugin>
                <groupId>org.springframework.bootgroupId>
                <artifactId>spring-boot-maven-pluginartifactId>
                <version>2.3.7.RELEASEversion>
                <configuration>
                    <mainClass>com.example.springbootdemo.SpringbootDemoApplicationmainClass>
                configuration>
                <executions>
                    <execution>
                        <id>repackageid>
                        <goals>
                            <goal>repackagegoal>
                        goals>
                    execution>
                executions>
            plugin>
        plugins>
    build>
<repositories>
		<repository>
			<id>publicid>
			<name>aliyun nexusname>
			<url>http://maven.aliyun.com/nexus/content/groups/public/url>
			<releases>
				<enabled>trueenabled>
			releases>
		repository>
	repositories>
	<pluginRepositories>
		<pluginRepository>
			<id>publicid>
			<name>aliyun nexusname>
			<url>http://maven.aliyun.com/nexus/content/groups/public/url>
			<releases>
				<enabled>trueenabled>
			releases>
			<snapshots>
				<enabled>falseenabled>
			snapshots>
		pluginRepository>
	pluginRepositories>

project>

打包过程:

maven配置阿里云镜像的两种方式_第2张图片

打包结束

maven配置阿里云镜像的两种方式_第3张图片

总结

1.如果工作电脑公司和自己两用,我们自己学习可以在pom.xml配置阿里云镜像,不过每个项目都要配置

2.如果电脑只是自己学习使用,我们在settings.xml中配置全局阿里云镜像即可,一劳永逸




个人csdn博客网址:https://blog.csdn.net/shaoming314

maven配置阿里云镜像的两种方式_第4张图片

个人博客网址:www.shaoming.club

maven配置阿里云镜像的两种方式_第5张图片

你可能感兴趣的:(springboot,运维,maven,spring,boot,java)