有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java将我的jar导入spark shell

我有一个简单的scala maven模块,它是一个更大项目的一部分(我创建了它,如下所述:https://www.jetbrains.com/help/idea/2016.2/creating-a-maven-module.html):

package com.myorg.simplr

import [...]

@SerialVersionUID(100L)
case class Simplr (){
    //class code
}

我试图在spark shell中使用这个类,所以我构建了一个jar文件“simpr-1.0.jar”,并用--jars simpr-1.0启动了spark shell。罐子

然后,当我尝试导入时,我得到以下结果

scala> import com.myorg.simplr.Simplr
<console>:25: error: object myorg is not a member of package com
         import com.myorg.simplr.Simplr
                    ^

我怎样才能使导入生效

我用maven来建造,这是我的pom。xml:

<?xml version="1.0" encoding="UTF-8"?>
<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">
    <parent>
        <artifactId>my-parent-project</artifactId>
        <groupId>com.myorg</groupId>
        <version>1.0</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>simplr</artifactId>
    <version>1.0</version>

    <dependencies>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-sql_2.10</artifactId>
            <version>1.6.0</version>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-mllib_2.10</artifactId>
            <version>1.6.0</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>

</project>

共 (1) 个答案

  1. # 1 楼答案

    请确保以下几点,它将工作 1.像./spark-shell jars jar_path一样启动spark shell 2.jar中有一个类文件,在您导入的同一个包下,打开jar并检查它。 3.启动spark后,转到http://localhost:4040/environment/你的jar是否在类路径条目中