我正在尝试在web项目中使用spark mllib.jar
。我下载了spark-1.1.0-bin-hadoop2.4
并解压缩。有一些罐子发现如下:
DataNucleus将-API-JDI-3.2.1.jar
DataNucleus将核 - 3.2.2.jar
DataNucleus将-RDBMS-3.2.1.jar
火花组装1.1.0-hadoop2.4.0.jar
火花例子-1.1.0-hadoop2.4.0.jar
然后我使用spark-assembly-1.1.0-hadoop2.4.0.jar
导入分类方法。它可以在java项目中成功运行。但是,当我将jar添加到SomeWebProject/web-inf/lib
时,它会显示错误消息:
validateJarFile ...\web-inf\lib\spark-assembly-1.1.0-hadoop2.4.0.jar jar not loaded. offending class:javax/servlet/servlet.class
我知道,因为我的web项目javax.servlet类与spark jar重复。我尝试删除spark javax.servlet
。它仍然无法正常工作。
你能告诉我如何弄明白吗
和
我可以使用其他火花罐在本地模式下运行mllib
。这个罐子太大了,它大概是132 mb
,我觉得它们中的一些是没用的。但我找不到任何其他可用的罐子。这个jar是导入spark-mllib.jar
的唯一方法吗?
附:由于某些原因,我不能在我的服务器中部署spark。所以我不能使用hadoop环境
非常感谢!!!
答案 0 :(得分:1)
如果你可以使用maven,那么只需将这些依赖项添加到你的pom.xml:
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.11</artifactId>
<version>1.3.0</version>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-mllib_2.11</artifactId>
<version>1.3.0</version>
</dependency>