idea如何离线构建Maven项目

需求背景

  • 某银行项目采用封闭式开发,所有代码都运行在内网环境,不可连接互联网
  • 此时,我们将一个标准的maven项目源代码拷贝进内网后,如何让其编译通过?
  • 因为不能连接互联网的maven中央仓库,也可能不能连接阿里云maven仓库,许多开源依赖包都无法拉取到
  • 当然还有可能该银行提供了自己的maven私服,但可能该私服上不存在你的项目所需的所有依赖或对应的版本
  • 这个时候,可能有点手足无措
  • 下面分享下个人的解决方案,欢迎大家指教

情况一:内网环境存在私有仓库,且私有仓库配置了中央仓库可连互联网

  1. 这种情况处理起来比较简单些
  2. 假设私有仓库可能设置了maven的国外镜像仓库或阿里云的镜像仓库
  3. 此时你项目中的绝大部分依赖都可以正常拉取到对应的版本过来
  4. 但是也存在一些特殊的依赖,比如你们公司自己开发的一些其他项目的jar,或者又是一些商业化的组件
  5. 这时,你需要做的就是将你的项目导入到idea后,并配置好maven及settings,右键maven刷新
  6. 视你的网速和项目大小,可能需要5到20分钟不等的时间,idea调用maven插件在下载大量依赖包
  7. 最终,你可能看到这么一份错误列表

  1. 而这里面列的,大概都是互联网仓库里找不到的依赖包了
  2. 此时,推荐你到maven私服上查询并确认下,这些依赖是否确实不存在
  3. 确认无误后,将这些jar包从互联网环境中拿到(这里有很多办法),然后上传到maven私服上,填写对相应的坐标
  4. 上传后,再次本地尝试打包,应该即可正常
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值