mirror of
https://github.com/apache/zeppelin
synced 2026-05-24 09:38:26 +00:00
### What is this PR for? This PR contains miscellaneous fixes & improvements for documentation: - fixes for code snippets formatting, like, https://zeppelin.apache.org/docs/0.8.0-SNAPSHOT/setup/security/shiro_authentication.html#apply-multiple-roles-in-shiro-configuration - fixes syntax highlighting (adding `scala`, `xml`, `java`, `bash`, ...) - fixes for list of interpreters - ... ### What type of PR is it? Documentation Author: Alex Ott <alexott@gmail.com> Closes #2997 from alexott/doc-formatting-fixes and squashes the following commits:10eed86ca[Alex Ott] Merge branch 'master' into doc-formatting-fixes37a2bb778[Alex Ott] miscellaneous fixes - wording, formatting, etc.63ca2b0e2[Alex Ott] fix usage of the ``` markup that lead to broken formatting9d285a1b7[Alex Ott] Fix list of interpreters5a7950e79[Alex Ott] add missing language spec for syntax highlightingbb26a2954[Alex Ott] use same formatting for parser namec90b61f11[Alex Ott] use same capitalization in all interpreter namesa994f4ecf[Alex Ott] improve formatting for Cassandra interpreter docs
104 lines
3.1 KiB
Markdown
104 lines
3.1 KiB
Markdown
---
|
|
layout: page
|
|
title: "Useful Developer Tools"
|
|
description: ""
|
|
group: development/contribution
|
|
---
|
|
<!--
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
-->
|
|
{% include JB/setup %}
|
|
|
|
# Useful Developer Tools
|
|
|
|
<div id="toc"></div>
|
|
|
|
### Developing `zeppelin-web`
|
|
|
|
Check [zeppelin-web: Local Development](https://github.com/apache/zeppelin/tree/master/zeppelin-web#local-development).
|
|
|
|
### Tools
|
|
|
|
#### SVM: Scala Version Manager
|
|
|
|
[svm](https://github.com/yuroyoro/svm) would be useful when changing scala version frequently.
|
|
|
|
#### JDK change script: OSX
|
|
|
|
this script would be helpful when changing JDK version frequently.
|
|
|
|
```bash
|
|
function setjdk() {
|
|
if [ $# -ne 0 ]; then
|
|
# written based on OSX.
|
|
# use diffrent base path for other OS
|
|
removeFromPath '/System/Library/Frameworks/JavaVM.framework/Home/bin'
|
|
if [ -n "${JAVA_HOME+x}" ]; then
|
|
removeFromPath $JAVA_HOME
|
|
fi
|
|
export JAVA_HOME=`/usr/libexec/java_home -v $@`
|
|
export PATH=$JAVA_HOME/bin:$PATH
|
|
fi
|
|
}
|
|
function removeFromPath() {
|
|
export PATH=$(echo $PATH | sed -E -e "s;:$1;;" -e "s;$1:?;;")
|
|
}
|
|
```
|
|
|
|
you can use this function like `setjdk 1.8` / `setjdk 1.7`
|
|
|
|
### Building Submodules Selectively
|
|
|
|
```bash
|
|
# build `zeppelin-web` only
|
|
mvn clean -pl 'zeppelin-web' package -DskipTests;
|
|
|
|
# build `zeppelin-server` and its dependencies only
|
|
mvn clean package -pl 'spark,spark-dependencies,python,markdown,zeppelin-server' --am -DskipTests
|
|
|
|
# build spark related modules with default profiles: scala 2.10
|
|
mvn clean package -pl 'spark,spark-dependencies,zeppelin-server' --am -DskipTests
|
|
|
|
# build spark related modules with profiles: scala 2.11, spark 2.1 hadoop 2.7
|
|
./dev/change_scala_version.sh 2.11
|
|
mvn clean package -Pspark-2.1 -Phadoop-2.7 -Pscala-2.11 \
|
|
-pl 'spark,spark-dependencies,zeppelin-server' --am -DskipTests
|
|
|
|
# build `zeppelin-server` and `markdown` with dependencies
|
|
mvn clean package -pl 'markdown,zeppelin-server' --am -DskipTests
|
|
```
|
|
|
|
### Running Individual Tests
|
|
|
|
```bash
|
|
# run the `HeliumBundleFactoryTest` test class
|
|
mvn test -pl 'zeppelin-server' --am -DfailIfNoTests=false -Dtest=HeliumBundleFactoryTest
|
|
```
|
|
|
|
### Running Selenium Tests
|
|
|
|
Make sure that Zeppelin instance is started to execute integration tests (= selenium tests).
|
|
|
|
```bash
|
|
# run the `SparkParagraphIT` test class
|
|
TEST_SELENIUM="true" mvn test -pl 'zeppelin-server' --am \
|
|
-DfailIfNoTests=false -Dtest=SparkParagraphIT
|
|
|
|
# run the `testSqlSpark` test function only in the `SparkParagraphIT` class
|
|
# but note that, some test might be dependent on the previous tests
|
|
TEST_SELENIUM="true" mvn test -pl 'zeppelin-server' --am \
|
|
-DfailIfNoTests=false -Dtest=SparkParagraphIT#testSqlSpark
|
|
```
|
|
|
|
|
|
|