美文网首页大数据大数据
Zeppelin 0.9 版本升级之源码编译

Zeppelin 0.9 版本升级之源码编译

作者: 六层楼那么高 | 来源:发表于2021-09-26 15:05 被阅读0次

    Zeppelin 0.9 升级之源码编译

    首先可以参考官方文档:
    https://zeppelin.apache.org/docs/latest/setup/basics/how_to_build.html#run-end-to-end-tests

    最开始,如果是打一个完整的包含所有模块的可运行的 tar 包,用 maven 命令:
    mvn clean package -Pbuild-distr -DskipTests
    之后,如果只需要单独对某个模块编译可以使用命令:
    mvn clean package -DskipTests -pl zeppelin-server
    由于 Zeppelin 项目模块众多,整个编译打包过程较为耗时,中途也出现了不少问题:

    1.部分依赖源下载慢的问题

    spark flink 的包比较大,几百兆,可以将官方 apache 地址清华的源:

    1. rlang/pom.xml
    1. spark/pom.xml
    1. flink/pom.xml

    当然如果有必要也可以使用科学上网,配置git npm IDEA 等组件的代理,配置方式具体参考官网文档,例如 git :

    git config --global http.proxy http://localhost:1080
    git config --global https.proxy http://localhost:1080
    git config --global url."http://".insteadOf git://

    npm 代理配置:

    npm config set proxy http://localhost:1080
    npm config set https-proxy http://localhost:1080
    npm config set registry "http://registry.npmjs.org/"
    npm config set strict-ssl false

    2. maven git-commit-id-plugin 这步很慢

    将以下参数改为 true:
    <plugin.gitcommitid.useNativeGit>true</plugin.gitcommitid.useNativeGit>
    Zeppeline 默认值 false, 改为 true 使用系统的 git,而不是内置的 jGit,具体还不清楚 jGit 慢的原因,修改之后就不会在这一步卡了,实在不行也可以把这个 git-commit-id-plugin plugin 注释掉。

    这个是 maven git 插件,可以将包的 git 信息打到指定目录

    <plugin>
            <groupId>pl.project13.maven</groupId>
            <artifactId>git-commit-id-plugin</artifactId>
            <version>${plugin.git.commit.id.version}</version>
            <executions>
              <execution>
                <goals>
                  <goal>revision</goal>
                </goals>
              </execution>
            </executions>
            <configuration>
              <skipPoms>false</skipPoms>
              <dotGitDirectory>${project.basedir}/.git</dotGitDirectory>
              <useNativeGit>${plugin.gitcommitid.useNativeGit}</useNativeGit>
              <generateGitPropertiesFile>true</generateGitPropertiesFile>
              <generateGitPropertiesFilename>${project.build.outputDirectory}/git.properties</generateGitPropertiesFilename>
              <failOnNoGitDirectory>false</failOnNoGitDirectory>
              <dateFormat>yyyy-MM-dd HH:mm:ss</dateFormat>
            </configuration>
    </plugin>
    

    3. zeppelin-web 编译

    建议参考官方文档:https://github.com/apache/zeppelin/tree/master/zeppelin-web

    Zeppelin 前端编译耗时也很长,编译中途出现了不少报错,例如:

    报错 1:error Expected linebreaks to be 'LF' but found 'CRLF' linebreak-style
    修复:在 .eslintrc 文件 rules 里面 配置 "linebreak-style": [0 ,"error", "windows"],

    报错 2:error Expected indentation of 10 spaces but found 8 indent
    修复:修改 .eslintrc.js 文件 rules 字段下增加 "indent": ["off", 2]

    相关文章

      网友评论

        本文标题:Zeppelin 0.9 版本升级之源码编译

        本文链接:https://www.haomeiwen.com/subject/jivqnltx.html