关于Saiku的二次开发,在本地编译然后启动自己编译好的Saiku服务
Saiku是开源的,从github上能下载源代码,本例中的saiku源码也是从github上找的,然后自己改了一些pom.xml,以及其它调整。
当前提供的saiku版本为 3.9
一、Saiku源码下载
下载saiku源码地址: https://github.com/DFX339/saiku-3.9.git #这是我改好在本地编译通过的saiku源码
二、Saiku相关jar包下载
在本地编译时需要注意有些jar包可能从仓库中获取不到,需要手动将缺失的jar包copy到本地maven仓库对应下载不下来jar包的目录下
这里将一些比较难找的jar包上传到了github上
saiku的jar包 github 地址: https://github.com/DFX339/saiku-repository.git
获取其他下载不下来jar的方式:
1. 下载最新版本的saiku-server ,从saiku-server omcatwebappssaikuWEB-INFlib 目录下对应的jar包,copy到本地maven仓库目录
2. 从 https://nexus.pentaho.org/#browse/search 中搜索jar包,下载下来然后copy到本地maven仓库目录
maven的配置文件:
本机存放目录: D:Program Filesapache-maven-3.5.3confsettings - saiku.xml
setting-saiku.xml 文件内容:
D:appmavensaiku-repository org.mortbay.jetty org.jenkins-ci.tools onelife-snapshorts deployment Abcd1234 nexus-aliyun *,!jeecg,!jeecg-snapshots, !pentaho Nexus aliyun https://maven.aliyun.com/repository/public saiku-profile false 1.8 Analytical Labs Repo Analytical Labs Repo-releases http://repo.meteorite.bi/content/repositories/alabs-release-local/ Analytical Labs snapshots Analytical Labs Repo-releases http://repo.meteorite.bi/content/repositories/alabs-snapshot-local/ pentaho-third-party http://nexus.pentaho.org/content/repositories/proxied-3rd-party-releases/ pentaho-public-release http://nexus.pentaho.org/content/repositories/pentaho-public-release-repos/ pentaho-snapshot http://nexus.pentaho.org/content/repositories/public-snapshots/ central Maven Repository Switchboard default https://maven.aliyun.com/repository/public false apache Apache repo default https://repository.apache.org/content/repositories/snapshots/ true nuxeo https://maven-us.nuxeo.org/nexus/content/repositories/public-snapshot/ nuxeo_thirdparty https://maven-us.nuxeo.org/nexus/content/repositories/thirdparty-snapshots/ true jboss http://repository.jboss.org/nexus/content/groups/public/ atlassian Atlassian Public default https://maven.atlassian.com/content/repositories/atlassian-public true ApacheSnapshot Apache Repository https://repository.apache.org/content/groups/snapshots/ true osc https://maven.aliyun.com/repository/public/ osc_thirdparty https://maven.aliyun.com/repository/public/ Analytical Labs Plugin Repo Analytical Labs Repo-releases http://repo.meteorite.bi/content/repositories/alabs-release-local/ osc_plugin https://maven.aliyun.com/repository/public/ saiku-profile
三、Saiku本地编译
1. 下载saiku源码
2. 将缺失的jar包引入 (下载相关jar包手动复制到maven仓库对应jar存放目录中,然后再Eclipse上更新maven: maven --》 update project 记得勾选offline )
3. 先执行maven命令:
1. mvn clean install 编译 saiku-olap-util ,
2. mvn clean install 编译 saiku-core,
3. 再在父pom上编译整个项目 mvn clean install
四、使用本地编译好的Saiku服务
编译通过后,在Saiku-server 项目下,会生成target目录信息,saiku服务就在 saiku-release-3.90saiku-server argetdistsaiku-server 目录下
按照之前的安装saiku的方法,直接双击start-saiku.bat 即可在windows上启动本地编译的saiku.
后续步骤就是上传license信息等使用saiku的相关步骤了,详情请参考关于Saiku的下载与安装博客一: https://www.cnblogs.com/DFX339/p/10253186.html
Problem:
1、 如果出现问题: Plugin Execution not covered by lifecycle configuration
Maven项目POM文件错误,提示“Plugin execution not covered by lifecycle configuration”的解决方案
请参考博客:https://www.cnblogs.com/AmilyLin/p/amilyLin.html