有用的开发者工具
开发 zeppelin-web
查看 zeppelin-web: Local Development。
工具
SVM: Scala 版本管理器
svm 在频繁更改 Scala 版本时会很有用。
JDK 更改脚本:OSX
这个脚本在频繁更改JDK版本时会很有帮助。
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:?;;")
}
你可以像这样使用这个函数 setjdk 1.8 / setjdk 1.7
选择性构建子模块
# build `zeppelin-web` only
./mvnw clean -pl 'zeppelin-web' package -DskipTests;
# build `zeppelin-server` and its dependencies only
./mvnw clean package -pl 'spark,spark-dependencies,python,markdown,zeppelin-server' --am -DskipTests
# build spark related modules with default profiles
./mvnw clean package -pl 'spark,spark-dependencies,zeppelin-server' --am -DskipTests
# build spark related modules with profiles: scala 2.13, spark 3.5 hadoop 3.3
./mvnw clean package -Pspark-scala-2.13 -Pspark-3.5 -Phadoop-3.3 \
-pl 'spark,spark-dependencies,zeppelin-server' --am -DskipTests
# build `zeppelin-server` and `markdown` with dependencies
./mvnw clean package -pl 'markdown,zeppelin-server' --am -DskipTests
运行单个测试
# run the `HeliumBundleFactoryTest` test class
./mvnw test -pl 'zeppelin-server' --am -DfailIfNoTests=false -Dtest=HeliumBundleFactoryTest
运行Selenium测试
确保启动Zeppelin实例以执行集成测试(= selenium测试)。
# run the `SparkParagraphIT` test class
TEST_SELENIUM="true" ./mvnw 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" ./mvnw test -pl 'zeppelin-server' --am \
-DfailIfNoTests=false -Dtest=SparkParagraphIT#testSqlSpark