首页 > 编程语言 > 记一次Java源码编译,三方包下载不下来的问题处理

记一次Java源码编译,三方包下载不下来的问题处理

时间:2024-03-25 14:35:07浏览次数:34  
标签:core Java repository public 编译 pom calcite 源码

dataease 项目后端的源码编译问题

dataease后端项目,pom里有一个包,无法下载。源码里的定义如下:

项目后端pom定义
<!--calcite核心包-->
<dependency>
    <groupId>org.apache.calcite</groupId>
    <artifactId>calcite-core</artifactId>
    <version>${calcite-core.version}</version>
    <classifier>de</classifier>
</dependency>

关于classifier标签,大概用处是,如果一个Maven目录里有多个包,通过这个标签,决定,到底从目录里选择哪个包来引入。
举个例子,如果不加该标签,那么就会从org\apache\calcite\calcite-core\${calcite-core.version}目录找 calcite-core-1.35.5.jar 进行导入 , 如果你加了标签,那么就会找 calcite-core-1.35.5-de.jar来导入。

现在pom飘红,查看本地maven库,找到对应目录,确实没有对应de的包。

找到官网的说明文档:

core-backend 源码引用到 calcite-core 依赖,是 DataEase 基于 Apache Calcite 工程修改后的依赖包,不属于开源部分。该依赖包会持续迭代,并上传到公共仓库中,对社区版源码的编译和使用不会造成任何影响。

说明该包属于不开源部分,所以没有源码包,我们只能从它自己的私仓下载对应的包。

查看pom定义,里面确实有定义拉取 calcite-core 依赖的仓库:

项目里pom关于私仓的定义
<repositories>
    <repository>
        <id>fit2cloud-public</id>
        <name>Fit2cloud Public</name>
        <url>https://repository.fit2cloud.com/repository/fit2cloud-public/</url>
    </repository>
</repositories>

那就奇怪了,那为什么编译时没生效?

后来查看我本地maven的setting.xml文件。

    <mirror>
      <id>aliyunmaven</id>
      <mirrorOf>*</mirrorOf>
      <name>阿里云公共仓库</name>
      <url>https://maven.aliyun.com/repository/public</url>
    </mirror>

发现,因为我配置了国内镜像,把所有的请求都拦截了去阿里云公共仓库去下载了,但其实,因为项目要下载的包并不开源,它是处在自己的私有仓里,所以需要放开去该私仓的请求。针对该私仓,将pom修改如下:

    <mirror>
      <id>aliyunmaven</id>
      <mirrorOf>*,!fit2cloud-public</mirrorOf>
      <name>阿里云公共仓库</name>
      <url>https://maven.aliyun.com/repository/public</url>
    </mirror>

再重新编译,OK。

参考资料

  1. Maven pom.xml 设置 repository 不生效解决方案
  2. Dataease项目

标签:core,Java,repository,public,编译,pom,calcite,源码
From: https://www.cnblogs.com/dq-book/p/18094008

相关文章

  • java项目:基于springboot实现的MBTI性格测试系统(分前后端)
    一、项目介绍本项目是一套基于springboot实现的个人性格测试系统,主要针对计算机相关专业的正在做bishe的学生和需要项目实战练习的Java学习者。包含:项目源码、数据库脚本等,该项目可以直接作为bishe使用。项目都经过严格调试,确保可以运行!二、技术实现和开发环境使用技术......
  • drf : 频率源码分析
    频率组件一、自定义频率组件自定义的逻辑#(1)取出访问者ip#(2)判断当前ip不在访问字典里,添加进去,并且直接返回True,表示第一次访问,在字典里,继续往下走#(3)循环判断当前ip的列表,有值,并且当前时间减去列表的最后一个时间大于60s,把这种数据pop掉,这样列表中只有60s以内的访问时间,#(4......
  • 原生JavaScript写个表格版的日历
    如图:简单、易懂、写着玩儿的……代码如下:<!DOCTYPEhtml><htmllang="en"><head> <metacharset="UTF-8"> <metaname="viewport"content="width=device-width,initial-scale=1.0"> <title>Document&l......
  • JavaScript初识及基本语法详解
    JavaScript是一种高级的脚本语言,它在Web开发中扮演着至关重要的角色,主要用于增强用户与HTML页面的交互过程。以下是JavaScript的一些基本概念和语法要点:简介:JavaScript是三大Web技术之一(HTML、CSS和JavaScript),它能使网页从静态变为动态互动,广泛应用于Web应用开发。控制HTML:Jav......
  • [openGL] qt5版本+mingw编译Assimp库+调用
    目录一版本二编译问题三CMAKE准备四开始编译4.1准备Assimp源码4.2编译工具准备4.3生成Assimp库4.4使用Assimp4.4.1准备4.4.2加载模型4.4.3模型效果一版本Assimp官网上已经停止更新截至在3.3.1版本,但是这个版本编译是最稳定的,较新的版本需要在gith......
  • 2024年必用的九大顶级Java分析器:性能优化的利器
      每周跟踪AI热点新闻动向和震撼发展想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领域的领跑者。点击订阅,与未来同行!订阅:https://......
  • 会议室预约小程序源码系统 带完整的安装代码包以及搭建教程
    随着企业会议需求的日益增长,会议室预约管理成为了一项不可或缺的工作。为了提高预约效率,减少资源冲突,会议室预约小程序应运而生。小编给大家介绍一款功能强大、易于安装的会议室预约小程序源码系统,带有完整的安装代码包及搭建教程。以下是部分代码示例:系统特色功能一览: ......
  • 盲盒交友小程序源码系统 带完整的代码包以及安装部署教程
    盲盒交友小程序源码系统的开发背景,源于社交媒体的蓬勃发展和年轻用户对于新颖、有趣社交方式的追求。盲盒交友作为一种新型的社交模式,以其神秘感和刺激性,迅速在年轻人中走红。而小程序作为一种轻量级、易上手的应用形式,更是为盲盒交友提供了便捷的传播渠道。因此,盲盒交友小程序......
  • Java项目:小程序公交信息在线查询系统(java+SSM+Vue+ElementUI+mysql)
    源码获取:俺的博客首页"资源"里下载! 项目介绍基于SSM+Vue的小程序公交信息在线查询系统小程序角色:管理员、用户两种角色,分为小程序端和后台管理两部分;用户:用户通过小程序登录页面可以填写用户名和密码等信息进行登录操作,登录成功后,进入首页可以查看首页、线路信息、站......
  • Java项目:小程序公交信息在线查询系统(java+SSM+Vue+ElementUI+mysql)
    源码获取:俺的博客首页"资源"里下载! 项目介绍基于SSM+Vue的小程序公交信息在线查询系统小程序角色:管理员、用户两种角色,分为小程序端和后台管理两部分;用户:用户通过小程序登录页面可以填写用户名和密码等信息进行登录操作,登录成功后,进入首页可以查看首页、线路信息、站......