2016-12-06 138 views
0

我是apache spark-scala的初学者,并且我已经使用SBT(独立应用程序)创建了一个项目。 我在互联网上搜索,我问了很多人,为什么我们用SBT在scala上创建自包含的应用程序?为什么我们需要自包含应用程序?自包含应用程序的兴趣是什么? 我到达了这些结果: - 我们使用sbt在scala中创建自包含的应用程序以创建项目的树状结构,并且可以运行完整的程序。 - 在程序运行中,我们生成了一个文件jar。为什么独立应用程序?

我跑我的程序是这样的:

spark-submit --class "name_file" --master local[*] target/scala-2.11/"name_project"_2.11-1.0.jar 
  • 有了独立的应用程序,我们可以给我的文件罐子给其他人,他可以不用在另一台机器上安装火花或斯卡拉运行我的程序(就像C++中的文件.dll一样)。

最后,可能是我的问题不是正常的,但我告诉过,我可以问我在StackoverFlow中的问题,我相信我会找到最好的答案。

谢谢!

回答

2

名称本身声明它在生产环境中运行(不开发)时没有外部依赖性。

一个自包含的应用程序由一个包含您的应用程序和JRE或运行应用程序所需要的任何运行时 环境的副本单,安装捆绑 的。当安装应用程序 时,其行为与任何本机应用程序的行为相同。阅读更多从here

而且在你区分一个简单的自包含的应用程序是here

+0

你的意思是,当我们使用Maven构建工具中运行的应用程序,它不是一个self-contained.is它呢? –

+0

@XlintXms,不完全是,直到你永远不会在应用程序中使用maven包含任何其他外部依赖项。 –