Apache spark 安装程序构造函数不工作
我需要从Liberty(17.0.0.2)上运行的Web应用程序启动的线程运行Spark作业。这是部署在Docker容器上的 我可以通过从java代码启动spark submit脚本来启动spark(2.2.0)作业来实现这一点。但是,我想删除脚本调用并使用SparkLauncher。当我这样做时,代码挂起在SparkLauncher构造函数上。构造函数不会返回任何阻塞整个工作的内容。在下面的代码中,我没有看到调用构造函数后的日志Apache spark 安装程序构造函数不工作,apache-spark,spark-launcher,Apache Spark,Spark Launcher,我需要从Liberty(17.0.0.2)上运行的Web应用程序启动的线程运行Spark作业。这是部署在Docker容器上的 我可以通过从java代码启动spark submit脚本来启动spark(2.2.0)作业来实现这一点。但是,我想删除脚本调用并使用SparkLauncher。当我这样做时,代码挂起在SparkLauncher构造函数上。构造函数不会返回任何阻塞整个工作的内容。在下面的代码中,我没有看到调用构造函数后的日志 private static Map<String, St
private static Map<String, String> env = new HashMap<String, String>();
static {
env.put("SPARK_HOME", "/Spark");
env.put("JAVA_HOME", "/opt/ibm/java-x86_64-80/jre");
env.put("SPARK_PRINT_LAUNCH_COMMAND","1");
}
private static final String SPARK_MASTER_URL = "local[*]";
public SparkAppHandle launch(String appName, String appJar, String sparkClass, String[] args)
throws IOException, InterruptedException {
logger.logp(Level.INFO, CLASS, "launch", " About to create SparkLauncher ");
SparkLauncher launchPad = new SparkLauncher(env);
logger.logp(Level.INFO, CLASS, "launch", " About to set Spark App Name ");
launchPad = launchPad.setAppName(appName);
private static Map env=new HashMap();
静止的{
环境投入(“星火之家”、“/SPARK”);
env.put(“JAVA_HOME”,“/opt/ibm/JAVA-x86_64-80/jre”);
环境put(“火花打印启动命令”,“1”);
}
私有静态最终字符串SPARK_MASTER_URL=“local[*]”;
公共SparkAppHandle启动(字符串appName、字符串appJar、字符串sparkClass、字符串[]args)
抛出IOException、InterruptedException{
logger.logp(Level.INFO,CLASS,“launch”,“即将创建SparkLauncher”);
SparkLaunchPad=新SparkLauncher(环境);
logger.logp(Level.INFO,CLASS,“launch”,“即将设置Spark应用程序名”);
launchPad=launchPad.setAppName(appName);
关于如何进一步调试的任何线索?我找不到包含调试此问题的任何信息的日志。是否调用SparkLauncher的启动方法?它将返回进程,您需要捕获此进程的输出以查看发生了什么。这是一个类路径问题;缺少一些JAR。但是,不知何故,没有I日志中的信息来调试这个,非常奇怪。在确保类路径中的所有相关JAR开始工作后。否,我没有使用launch,但startApplicationstartApplication也将启动另一个进程,调用redirectOutput方法重定向进程输出