idea离线模式使用备忘录

行内离线开发java maven项目,由于不提供maven中心仓库及连接外网功能,因此需要特殊处理,保证行内开发编译运行正常进行

idea提供在线,离线2种模式构建maven依赖库

在线: 从maven中心仓库在线下载到本地仓库

离线:只从本地仓库构建maven依赖,如果本地仓库缺少,则 maven项目依赖的jar包会报红

行内离线使用步骤

1.仓库及settings.xml文件准备

行外将项目,编译构建通过后,找到仓库地址 local repository(ctrl+alt+s快捷键),然后将仓库压缩后,传到行内

将上图中的settings.xml文件,也发送到行内;

  1. 行内idea构建maven依赖

settings.xml配置文件添加如下2行,保证maven使用离线模式,并指定离线的本地仓库

XML 复制代码
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0&quot;
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance&quot;
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd&quot;&gt;
    <!-- 如下2行配置新增 -->
    <offline>true</offline>
    <localRepository>D:\仓库绝对路径\repository</localRepository>
</settings>

新建一个windows的 bat文件,代码如下, 然后双击运行,将 仓库中的用于触发在线更新的文件都删除掉,保证离线正常构建

bash 复制代码
set REPOSITORY_PATH=D:\仓库绝对路径\repository
rem 检索中...
for /f " delims=" %%i in ('dir /b /s "%REPOSITORY_PATH%\\*_remote.repositories*"') do (
        del /s /q %%i
)
for /f " delims=" %%i in ('dir /b /s "%REPOSITORY_PATH%\\*sha1*"') do (
        del /s /q %%i
)
for /f " delims=" %%i in ('dir /b /s "%REPOSITORY_PATH%\\*lastUpdated*"') do (
        del /s /q %%i
)
rem 检索结束,可以退出了
pause

打开项目后,ctrl+alt+s 按如图所示配置, 注意:work offline 必须打钩,剩下maven地址,仓库,settings.xml使用 从行外同步的地址即可,如下图

JDK选择项目对应的版本,然后点击 apply,如下图

ctrl+shift+alt+s 快捷键打开项目设置, sdk 选择项目的jdk版本,如下图

平台设置的SDKS, 也选择对应的jdk版本,如下图,点击apply

如上步骤后,基本保证正常离线构建maven,保证编译,运行通过

相关推荐
yi0111 小时前
LeetCode 3. 无重复字符的最长子串|不定长滑动窗口:什么时候更新最大值?
笔记·python·算法·leetcode·双指针·滑动窗口
Water_based1 小时前
水性滚涂漆应用于滚喷机小五金件喷涂工艺详解
经验分享·笔记·产品经理
只愿云淡风清2 小时前
正则表达式学习笔记-01 正则表达式的来源
笔记·学习·正则表达式
ljt27249606612 小时前
Vue笔记(十三)--mixin
vue.js·笔记
启观川3 小时前
数据结构与算法 -第 3 章 常用算法-回溯算法
数据结构·笔记·python·算法
启观川11 小时前
数据结构与算法 -第 3 章 常用算法-动态规划
数据结构·笔记·python·算法
一木 之林12 小时前
Dify学习笔记 01 · 平台入门与实战:部署、五类应用、RAG与MCP(第1-16集)
人工智能·笔记·学习·计算机视觉
weixin_4481199412 小时前
Datawhale Easy Data × AI:构建知识与记忆驱动的 Agent笔记8
人工智能·笔记·react.js
陈年老古董13 小时前
Hive 函数学习笔记(下):窗口函数与经典案例
hive·笔记·学习
yi01113 小时前
LeetCode 643. 子数组最大平均数 I|从暴力枚举到滑动窗口
人工智能·笔记·python·算法·leetcode·滑动窗口