欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

atlas的编译全过程

程序员文章站 2022-07-10 15:26:02
...

atlas的编译全过程

atlas现在是市场很受欢迎的数据管理工具,但是atlas的下载完是一个源码的项目,无法使用,必须编译(就是由源程序到目标程序的过程内含代码生成,代码集成,语法分析,词法分析,依赖下载),下面就是atlas使用maven在linux的编译过程

1.首先在你的linux机器中要有apache-maven-3.6.3-bin.tar.gz

先把maven安装在机器中,安装的方法解压到你的目录即可.
在maven在该机器的环境变量中设置
MAVEN_HOME=/usr/apps/maven-3.6.3
PATH=:$MAVEN_HOME/bin
测试是否配置成功:mvn -ver

2.编译文件在国外下载很慢,我们接下来添加国内下载镜像,用来加快编译(下载依赖包)速度

/usr/apps/maven-3.6.3/conf/vi settings.xml
在mirrors中添加一个国内镜像

<mirror>
    <id>alimaven</id>
    <name>aliyun maven</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
    <mirrorOf>central</mirrorOf>
</mirror>

问题一
maven在调配置文件的时候优先调用的是/root/.m2/(隐藏目录)下的内容

[root@doit04 ~]# ll -a

如果有就用,如果没有就创建一个然后将配置文件复制过去

[root@doit04 conf]# cp settings.xml /root/.m2/

问题二
解决版本冲突的问题,将zookeeper和hbase等依赖的版本修改成自己环境一致(或兼容)的版本(以下版本亲测可用)
/usr/apps/apache-atlas-sources-2.0.0/pom.xml(父工程pom文件)中添加
里面有很难多很多文件我们用"/"搜索zookeeper,hbase,solr
其中hive3.1.0兼容hive2.x所以不用改

<zookeeper.version>3.4.14</zookeeper.version>
<hbase.version>2.2.3</hbase.version>
<solr.version>7.7.2</solr.version>

问题三
在distro(子工程)中hbase和solr的下载路径是
因为是外网200m的文件能慢到你怀疑人生所以我们改成清华大学的下载网址下载速度快很多

<hbase.tar>http://mirrors.tuna.tsinghua.edu.cn/apache/hbase/${hbase.version}/hbase-${hbase.version}-bin.tar.gz</hbase.tar>
<solr.tar>http://mirrors.tuna.tsinghua.edu.cn/apache/lucene/solr/${solr.version}/solr-${solr.version}.tgz</solr.tar>

3.编译/usr/apps/apache-atlas-sources-2.0.0文件

首先将编译器的初始堆内存调大,在把最大堆内存调大,因为文件比较大,用的内存比较多

[root@doit04 apache-atlas-sources-2.0.0]# export MAVEN_OPTS="-Xms2g -Xmx2g"

用maven清空测试程序的package,编译一个发布版本的包含hbase和solr的程序

[root@doit04 apache-atlas-sources-2.0.0]# mvn clean -DskipTests package -Pdist,embedded-hbase-solr

提醒

恭喜你进入编译状态,保守估计两个小时,因为有些依赖从清华大学下载很快,但是有一些依赖是从清华大学下载不了的,还是要去外网下载所以时间会久一点,
另外atlas的webui子模块中依赖了nodejs,会从nodejs的*仓库去下载相关依赖库速度更是超级慢,一旦断了还是要重来,运气不好就挂了.
如果你能搞一个不错的vpn那么速度和安全性就会有所提升

结果

编译好之后会在你的[[email protected] apache-atlas-sources-2.0.0] # distro/
下产生以下这些文件红框内就是我们编译好的atlas
atlas的编译全过程