IDEA及Maven配置代理及Maven中央仓库配置详解

2024-05-13 08:04

本文主要是介绍IDEA及Maven配置代理及Maven中央仓库配置详解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、配置代理

首先,需要本地开启代理入口,如图。

这个跟你使用代理软件有关。像我使用的是qv2ray。

其次,idea配置代理,如图。

1.1 idea配置代理

打开Settings,如图

1.2 maven配置代理

maven配置代理,修改settings.xml,如图。

之后,就能正常且快速的拉取外网依赖咯。

二、maven中央仓库记录

2.1 仓库地址

仓库名称仓库地址需要科学上网
Maven中央仓库https://repo.maven.apache.org/maven2/
Maven中央仓库https://repo1.maven.org/maven2/
阿里云中央仓库(第二个的镜像,同步会再慢点)https://maven.aliyun.com/repository/central×
腾讯云中央仓库http://mirrors.cloud.tencent.com/nexus/repository/maven-public/×
Gis空间信息仓库https://repo.osgeo.org/repository/release/

2.2 settings.xml指定仓库

给出一个简单示例,具体的仓库配置可以直接参考2.3

<mirror><id>mirrorId</id><mirrorOf>repositoryId</mirrorOf><name>Human Readable Name for this Mirror.</name><url>http://my.repository.com/repo/path</url><releases><enabled>true</enabled></releases><snapshots><enabled>false</enabled></snapshots>
</mirror>

2.3 pom.xml指定仓库

<!--使用仓库的顺序,按照如下从前到后。具体配置说明参考https://meethigher.top/blog/2023/idea-proxy/ -->
<repositories><!--阿里维护的中央仓库镜像,不需科学上网--><repository><id>alibaba</id><name>alibaba-maven-central</name><url>https://maven.aliyun.com/repository/central</url><!-- 是否开启发布版构件下载 --><releases><enabled>true</enabled></releases><!-- 是否开启快照版构件下载 --><snapshots><enabled>false</enabled></snapshots></repository><!--腾讯维护的中央仓库镜像,不需科学上网--><repository><id>tencent</id><name>tencent-maven-central</name><url>http://mirrors.cloud.tencent.com/nexus/repository/maven-public/</url><!-- 是否开启发布版构件下载 --><releases><enabled>true</enabled></releases><!-- 是否开启快照版构件下载 --><snapshots><enabled>false</enabled></snapshots></repository><!--apache维护的中央仓库,需要settings.xml配置文件里配置代理以实现科学上网--><repository><id>central2</id><name>apache-maven-central</name><url>https://repo1.maven.org/maven2/</url><!-- 是否开启发布版构件下载 --><releases><enabled>true</enabled></releases><!-- 是否开启快照版构件下载 --><snapshots><enabled>false</enabled></snapshots></repository><!--官方中央仓库,需要settings.xml配置文件里配置代理以实现科学上网--><repository><id>central</id><name>maven-central</name><url>https://repo1.maven.org/maven2/</url><!-- 是否开启发布版构件下载 --><releases><enabled>true</enabled></releases><!-- 是否开启快照版构件下载 --><snapshots><enabled>false</enabled></snapshots></repository><!--gis空间信息仓库,需要settings.xml配置文件里配置代理以实现科学上网--><repository><id>gis</id><name>maven-gis</name><url>https://repo.osgeo.org/repository/release/</url><!-- 是否开启发布版构件下载 --><releases><enabled>true</enabled></releases><!-- 是否开启快照版构件下载 --><snapshots><enabled>false</enabled></snapshots></repository>
</repositories>
<!--插件仓库配置,使用顺序从前到后-->
<pluginRepositories><pluginRepository><id>alibaba</id><name>alibaba-maven-central</name><url>https://maven.aliyun.com/repository/central</url><!-- 是否开启发布版构件下载 --><releases><enabled>true</enabled></releases><!-- 是否开启快照版构件下载 --><snapshots><enabled>false</enabled></snapshots></pluginRepository><pluginRepository><id>central</id><name>maven-central</name><url>https://repo1.maven.org/maven2/</url><!-- 是否开启发布版构件下载 --><releases><enabled>true</enabled></releases><!-- 是否开启快照版构件下载 --><snapshots><enabled>false</enabled></snapshots></pluginRepository>
</pluginRepositories>

2.4 验证所使用的仓库

就比如引入了工具包

<dependency><groupId>top.meethigher</groupId><artifactId>ftp-client-pool</artifactId><version>1.1</version>
</dependency>

打开这个工具包,查看下面的_remote.repositories中使用的仓库id

2.5 内网迁移包注意事项

由于通过互联网下载下来的依赖jar包,都携带了_remote.repositories这个文件,如果后续更新什么的还会通过这里面指定的仓库更新。

故我们在迁移到内网时,需要将_remote.repositories删除掉。

以下放置windows与linux系统的批量删除命令

windows.bat

@echo off
setlocal enabledelayedexpansionrem 设置要删除的文件名称
set "file_to_delete=_remote.repositories"rem 循环遍历当前目录及其子目录
for /r %%i in (*) do (set "file=%%~nxi"rem 检查文件名称是否匹配if "!file!"=="%file_to_delete%" (echo delete "%%i"del "%%i")
)echo delete successfully
pause

linux.sh

#!/bin/bash
# 获取当前所在目录地址
directory="$PWD"
# 使用 find 命令查找并删除目录及其子目录中的 _remote.repositories 文件
find "$directory" -name '_remote.repositories' -type f -delete
echo "delete successfully"

这篇关于IDEA及Maven配置代理及Maven中央仓库配置详解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/985133

相关文章

SpringBoot日志级别与日志分组详解

《SpringBoot日志级别与日志分组详解》文章介绍了日志级别(ALL至OFF)及其作用,说明SpringBoot默认日志级别为INFO,可通过application.properties调整全局或... 目录日志级别1、级别内容2、调整日志级别调整默认日志级别调整指定类的日志级别项目开发过程中,利用日志

Java中的抽象类与abstract 关键字使用详解

《Java中的抽象类与abstract关键字使用详解》:本文主要介绍Java中的抽象类与abstract关键字使用详解,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录一、抽象类的概念二、使用 abstract2.1 修饰类 => 抽象类2.2 修饰方法 => 抽象方法,没有

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

Vite 打包目录结构自定义配置小结

《Vite打包目录结构自定义配置小结》在Vite工程开发中,默认打包后的dist目录资源常集中在asset目录下,不利于资源管理,本文基于Rollup配置原理,本文就来介绍一下通过Vite配置自定义... 目录一、实现原理二、具体配置步骤1. 基础配置文件2. 配置说明(1)js 资源分离(2)非 JS 资

MySQL8 密码强度评估与配置详解

《MySQL8密码强度评估与配置详解》MySQL8默认启用密码强度插件,实施MEDIUM策略(长度8、含数字/字母/特殊字符),支持动态调整与配置文件设置,推荐使用STRONG策略并定期更新密码以提... 目录一、mysql 8 密码强度评估机制1.核心插件:validate_password2.密码策略级

ShardingProxy读写分离之原理、配置与实践过程

《ShardingProxy读写分离之原理、配置与实践过程》ShardingProxy是ApacheShardingSphere的数据库中间件,通过三层架构实现读写分离,解决高并发场景下数据库性能瓶... 目录一、ShardingProxy技术定位与读写分离核心价值1.1 技术定位1.2 读写分离核心价值二

从入门到精通详解Python虚拟环境完全指南

《从入门到精通详解Python虚拟环境完全指南》Python虚拟环境是一个独立的Python运行环境,它允许你为不同的项目创建隔离的Python环境,下面小编就来和大家详细介绍一下吧... 目录什么是python虚拟环境一、使用venv创建和管理虚拟环境1.1 创建虚拟环境1.2 激活虚拟环境1.3 验证虚

详解python pycharm与cmd中制表符不一样

《详解pythonpycharm与cmd中制表符不一样》本文主要介绍了pythonpycharm与cmd中制表符不一样,这个问题通常是因为PyCharm和命令行(CMD)使用的制表符(tab)的宽... 这个问题通常是因为PyCharm和命令行(CMD)使用的制表符(tab)的宽度不同导致的。在PyChar

sky-take-out项目中Redis的使用示例详解

《sky-take-out项目中Redis的使用示例详解》SpringCache是Spring的缓存抽象层,通过注解简化缓存管理,支持Redis等提供者,适用于方法结果缓存、更新和删除操作,但无法实现... 目录Spring Cache主要特性核心注解1.@Cacheable2.@CachePut3.@Ca

QT Creator配置Kit的实现示例

《QTCreator配置Kit的实现示例》本文主要介绍了使用Qt5.12.12与VS2022时,因MSVC编译器版本不匹配及WindowsSDK缺失导致配置错误的问题解决,感兴趣的可以了解一下... 目录0、背景:qt5.12.12+vs2022一、症状:二、原因:(可以跳过,直奔后面的解决方法)三、解决方