Apache Ranger是什么,它是一个为Hadoop平台提供了全面的数据安全访问控制及监控的集中式管理框架,Apache顶级项目。不废话了,其实本篇没那么高大上,就是一步步教你Windows环境IDEA下Ranger1.2.0源码编译详细流程。
一、本地环境准备
- git(2.16.2)
- maven(3.6.1)
- idea(2020.1)
- python(2.7.18)
- Tomcat(7.0.105)
以上安装步骤均可以百度
二、源码编译
用git clone 代码,Ranger官方版本1.2.0 仓库地址 https://github.com/apache/ranger.git,
在cmd或者git bash 进入项目工程对应目录
使用如下命令编译源代码,注意编译超级费时间
mvn -DskipTests=true clean compile package install assembly:assembly
三、使用idea打开项目
1. 安装数据库Mysql版
找到 security-admin-web模块,在安装脚本里security-admin/scripts/install.properties
找出mysql所需要的sql脚本db/mysql/optimized/current/ranger_core_db_mysql.sql
和db/mysql/xa_audit_db.sql
,安装数据库。数据库安装详细过程(略)。
2. 配置Tomcat,发布 security-admin-web项目。
3. 修改security-admin中以下文件
src\main\resources\conf.dist\ranger-admin-site.xml中的ranger.jpa.jdbc.url
,ranger.jpa.jdbc.user
,ranger.jpa.jdbc.password
<property>
<name>ranger.jpa.jdbc.url</name>
<value>jdbc:log4jdbc:mysql://127.0.0.1/ranger</value>
<description></description>
</property>
<property>
<name>ranger.jpa.jdbc.user</name>
<value>root</value>
<description></description>
</property>
<property>
<name>ranger.jpa.jdbc.password</name>
<value>123456</value>
<description></description>
</property>
src\main\webapp\META-INF\applicationContext.xml中的叫propertyConfigurer的bean
<bean id="propertyConfigurer" class="org.apache.ranger.common.PropertiesUtil">
<property name="locations">
<list>
<!-- <value>classpath:xa_default.properties</value> -->
<!-- <value>classpath:xa_system.properties</value> -->
<!-- <value>classpath:xa_custom.properties</value> -->
<!-- <value>classpath:xa_ldap.properties</value> -->
<value>classpath:conf.dist/core-site.xml</value>
<value>classpath:conf.dist/ranger-admin-default-site.xml</value>
<value>classpath:conf.dist/ranger-admin-site.xml</value>
</list>
</property>
<property name="propertiesPersister" ref="xmlPropertyConfigurer" />
</bean>
4. 编译启动Tomcat即可。
四、遇到问题
1.python版本问题
Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:1.7:run (generate-version-annotation) on project ranger-util: An Ant BuildException has occured: Execute failed: java.io.IOException: Cannot run program "python" (in directory "E:\code\openSource\ranger\ranger-util"): CreateProcess error=2, 系统找不到指定的文件。
[ERROR] around Ant part ...<exec failonerror="true" executable="python">... @ 4:48 in E:\code\openSource\ranger\ranger-util\target\antrun\build-main.xml
[ERROR] -> [Help 1]
解决方案: 安装Python 且要是2版本的。
Tomcat版本问题
org.apache.catalina.loader.VirtualWebappLoader
解决方案: 之前使用9版本的Tomcat ,改为7.0.105就可以了。
以上就是Windows环境IDEA下Ranger1.2.0源码编译详细流程的详细内容,更多关于Ranger1.2.0源码编译的资料请关注编程网其它相关文章!