Tag - OpenBI

OpenBI saiku saiku-query nexus    2017-07-19 21:33:43    525

一、下载saiku-query的源码:

https://github.com/OSBI/saiku-query.git

二、修改文件:1、setting.xml文件(以下为关键代码):

<servers>
<server>  
  <id>releases</id>  
  <username>admin</username>  
  <password>admin123</password>  
</server>  
<server>  
  <id>snapshots</id>  
  <username>admin</username>  
  <password>admin123</password>  
</server>
<server>  
  <id>thirdparty</id>  
  <username>admin</username>  
  <password>admin123</password>  
</server>
<server>  
  <id>snapshots-host</id>  
  <username>admin</username>  
  <password>admin123</password>  
</server>
</servers> 
...........
<repositories>
  <repository>
   <id>snapshots</id>
   <name>Snapshots</name>
   <url>http://192.168.10.140:8081/nexus/content/repositories/snapshots</url>
  </repository>
  <repository>
   <id>releases</id>
   <name>Releases</name>
   <url>http://192.168.10.140:8081/nexus/content/repositories/releases</url>
  </repository>
  <repository>
   <id>snapshots-host</id>
   <name>SnapshotsHost</name>
   <url>http://192.168.10.140:8081/
saiku saiku-query nexus OpenBI    2017-07-19 21:28:25    533
参考关于0.1版本的构建过程:http://blog.liuyingguang.cn/blog/post/lightingfire/build-%E5%B9%B6deploy-saiku-query0.1%E5%88%B0nexus

修改pom文件
其中,红色的为原有被注释的
绿色的为添加的
蓝色地方比较重要,在saiku-query的0.4版本中,居然依赖了0.1的版本,但是源码中却没有相关0.1的分支或者标签,所以此处可以注释,打包也成功了,但是是否存在不稳定或者不全的现象,尚未可知


修改后如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.saiku</groupId>
    <artifactId>saiku-query</artifactId>
    <version>0.4-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>query</name>
    <url>http://maven.apache.org</url>

    <!-- <distributionManagement>
        <repository>
            <id>deployment</id>
            <name>Internal Releases</name>
            <url>http://repo.meteorite.bi/content/repositories/alabs-release-local/</url>
        </repository>
        <snapshotRepository>
            <id>deployment<
saiku3 二次开发 java OpenBI    2017-07-19 21:14:57    575

总览

saiku的社区版本二次开发一直以来都是比较费劲的,最近saiku社区版在新版本中,引入了license的机制,于是我选了个3.8稳定版本(release-3.8),且不需要license的版本作为基础,将代码合并在一个项目中,以简化二次开发和源码研究。

完成以下步骤后的结果是:

作为一个普通maven项目,可以使用eclipse部署在tomcat中,debug等各种玩耍

操作步奏

  1. 创建新项目saiku3

    image

  2. 在创建的项目中,分别创建resource目录:“src/main/saiku-web”,“src/main/saiku-service”,“src/main/saiku-olap-util”,并将saiku-core下的相应代码(java目录下和resources目录下的文件)分别copy到里面,

  3. 将saiku-webapp\src\main\webapp目录下的所有文件,覆盖到新建项目的webapp目录中

  4. 将编译过后的zip包中tomcat\webapps\下的ROOT目录中文件全部copy到新建项目的webapp目录中并修改/saiku3/src/main/webapp/js/saiku/Settings.js文件中的TOMCAT_WEBAPP值为“/saiku3”

  5. 将编译过后的zip包中saiku-server目录下的data和repository文件夹copy到项目的webapp目录中

  6. 修改saiku-beans.properties文件,修改所有“../../”的地方替换为“../webapps/saiku3/”;修改saiku-beans.properties文件,修改pluginpath为“../webapps/saiku3/js/saiku/plugins/”(20160614修改)

  7. 修改eclipse中tomcat的工作路径:参考如下文章 http://blog.csdn.net/gsying1474/article/details/51597995

  8. 修改 Database.java中的init方法,注释loadEarthquakes();方法的调用,以保证代码启动(此方法的代码中有部分导致启动错误,此方法为加载demo数据,所以不会影响功能使用)

  9. 整理POM文件中的jar包依赖(比较复杂)

  10. 如果不使用maven项目,也可以将打包好的项目中jar包全部copy到lib

saiku3 OpenBI    2017-07-19 21:13:41    534
前段时间由于研究需要,并且发现大家对于saiku3.x的构建有些疑问,并且构建难度比较高,因此将自己的记录分享出来,以供大家参考

本构建依赖于saiku-query-0.4的构建,参考如下文章:

红色的为原有被注释的
绿色的为添加的
蓝色地方比较重要,为我修改的地方,与上方红色对照下

前提是需要下载mondrian-4.3.0.1-SPARK的包放到自己的nexus中

源码地址:
使用版本:
    tag:saiku-3.7.4


1、修改saiku根目录的pom.xml文件
<?xml version="1.0" encoding="UTF-8"?>
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.saikuanalytics</groupId>
    <artifactId>saiku</artifactId>
    <packaging>pom</packaging>
    <version>3.7.4</version>
    <name>Saiku Module Project</name>
    <scm>
        <developerConnection>
            scm:git:git@github.com:OSBI/saiku.git
        </developerConnection>
        <tag>saiku-3.1-SNAPSHOT</tag>
    </scm>
    <modules>
        <module>saiku-core</module>
        <module>s
saiku3 二次开发 OpenBI    2017-07-19 21:12:26    491

由于二次开发需要重新整理pom文件,而pom文件中的依赖关系比较难整理,故将整理好的pom文件发出来,以供参考

 

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>cn.firewarm</groupId>
	<artifactId>saiku3</artifactId>
	<packaging>war</packaging>
	<version>0.0.1-SNAPSHOT</version>
	<name>saiku Maven Webapp</name>
	<url>http://maven.apache.org</url>
	<distributionManagement><!--add by liuyg -->
		<snapshotRepository>
			<id>snapshots-host</id>
			<url>http://nexus.firewarm.cn:8081/nexus/content/repositories/snapshots-host/</url>
		</snapshotRepository>
	</distributionManagement>
	<properties>
		<saiku.version>3.8-RC5</saiku.version>
		<maven.compiler.source>1.7</maven.compiler.source>
		<maven.compiler.target>1.7</maven.compiler.target>
		<top.dir>${project.basedir}</top.dir>
		<!-- <spring.version>4.0.1.RELEASE</spring.version> -->
		<spring.versi
3/5