如何安装sbt(sbt在ubuntu上的安装与配置)(有详细安装网站和图解)

2024-04-26 18:52

本文主要是介绍如何安装sbt(sbt在ubuntu上的安装与配置)(有详细安装网站和图解),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

sbt下载官网

 选择对应的版本和安装程序

Download | sbt (scala-sbt.org)

安装

解压

将sbt-1.9.0.tgz上传到xshell,并解压

解压:

tar -zxvf sbt-1.9.0.tgz


配置

1、在/home/hadoop/sbt中创建sbt脚本

/home/hadoop/sbt    注意要改成自己的地址

cd sbtvim ./sbt

 


 在脚本中添加如下内容:

记住里面的路径,要改成自己的路径

#!/bin/bash
SBT_OPTS="-Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=256M"
java $SBT_OPTS -jar /home/hadoop/sbt/bin/sbt-launch.jar "$@"


2、为sbt脚本文件增加可执行权限

一定要在对应的目录下完成

找到对应的文件夹目录

chmod u+x ./sbt


3、运行如下命令,检查sbt是否可用(查看sbt的版本信息)

./sbt sbtVersion

 


sbt的运用

一定要注意对应的目录和路径,不能错

1、创建存放代码的目录

mkdir -p sparkapp/src/main/scala/


2、编写代码

vim sparkapp/src/main/scala/test1.scala

 

对应目录 

在test1.scala文件中增加如下内容            

object HelloWorld{def main(args:Array[String]){println("hello world!");}}

3、进入sparkapp目录编写sbt程序

cd sparkapp/
vim simple.sbt


在simple.sbt中添加如下内容:

name := "Simple Project"    
version := "1.9.0"   
scalaVersion := "2.12.10"
libraryDependencies += "org.apache.spark" %% "spark-core" % "3.5.1" 
name := "Simple Project"    (项目名称)
version := "1.6.1"             (自己的sbt版本号)
scalaVersion := "2.12.10"        (自动scala版本号)
libraryDependencies += "org.apache.spark" %% "spark-core" % "3.1.1"  (spark的版本号)
//如何要连接mysql的话
libraryDependencies += "mysql" % "mysql-connector-java" % "8.0.26" // 使用适合你MySQL版本的驱动

4、打包scala程序(必须在sbt/sparkapp这个路径下操作)

cd sbt/sparkapp/
/home/hadoop/sbt/sbt package


 (打包生成的jar包在sbt/sparkapp/target/scala-2.12/simple-project_2.12-1.6.1.jar) 不同的路径生成的位置也不一样

5、通过spark-submit运行程序

/usr/local/spark-3.5.1/bin/spark-submit --class "HelloWorld" ./target/scala-2.12/simple-project_2.12-1.9.0.jar

/usr/local/spark-3.5.1/bin/spark-submit   //spark-submit的对应位置

--class "HelloWorld"    //引用类的名称

./target/scala-2.12/simple-project_2.12-1.9.0.jar   //刚才打包的对应的位置

 运行结果


复杂代码的实现

1、创建一个代码文件text2.scala

cd sbt/sparkapp/src/main/scala/
vim text2.scala


 在文件中增加如下内容:

这段代码,中处理了employ.txt文件,请确定对应路径下你有这个文件

文件内容为

1,Ella,36

2,Bob,29

3,Jack,29

import org.apache.spark.sql.{SparkSession, Row}  
import org.apache.spark.sql.types._  object RDDToDataFrameExample {  def main(args: Array[String]): Unit = {  // 创建SparkSession  val spark = SparkSession.builder()  .appName("RDD to DataFrame Example")  .master("local[*]") // 使用本地模式,如果连接到集群请更改这里  .getOrCreate()  import spark.implicits._  // 指定employee.txt文件的位置  val inputFilePath = "file:///home/hadoop/employee.txt"  // 从文本文件读取数据创建RDD  val rdd = spark.sparkContext.textFile(inputFilePath)  // 定义DataFrame的schema  val schema = StructType(Array(  StructField("id", IntegerType, nullable = false),  StructField("name", StringType, nullable = false),  StructField("age", IntegerType, nullable = false)  ))  // 将RDD转换为DataFrame  val dataFrame = spark.createDataFrame(rdd.map { line =>  val parts = line.split(",")  Row(parts(0).toInt, parts(1), parts(2).toInt)  }, schema)  // 显示DataFrame内容  dataFrame.show(false)  // 按照指定格式打印所有数据  dataFrame.collect().foreach { row =>  println(s"id:${row.getAs[Int]("id")},name:${row.getAs[String]("name")},age:${row.getAs[Int]("age")}")  }  // 停止SparkSession  spark.stop()  }  
}


2、在sbt中编译打包(必须在cd sbt/sparkapp目录下)

cd
cd sbt/sparkapp
/home/hadoop/sbt/sbt package


3、使用spark-submit命令提交运行(必须在cd sbt/sparkapp目录下)

/usr/local/spark-3.5.1/bin/spark-submit --class "RDDToDataFrameExample" ./target/scala-2.12/simple-project_2.12-1.9.0.jar

4、运行后查看结果 

如果你学到这里,恭喜,你已经学习sbt的安装和使用了

这篇关于如何安装sbt(sbt在ubuntu上的安装与配置)(有详细安装网站和图解)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/938380

相关文章

如何配置Spring Boot中的Jackson序列化

《如何配置SpringBoot中的Jackson序列化》在开发基于SpringBoot的应用程序时,Jackson是默认的JSON序列化和反序列化工具,本文将详细介绍如何在SpringBoot中配置... 目录配置Spring Boot中的Jackson序列化1. 为什么需要自定义Jackson配置?2.

C++ vector的常见用法超详细讲解

《C++vector的常见用法超详细讲解》:本文主要介绍C++vector的常见用法,包括C++中vector容器的定义、初始化方法、访问元素、常用函数及其时间复杂度,通过代码介绍的非常详细,... 目录1、vector的定义2、vector常用初始化方法1、使编程用花括号直接赋值2、使用圆括号赋值3、ve

鸿蒙中Axios数据请求的封装和配置方法

《鸿蒙中Axios数据请求的封装和配置方法》:本文主要介绍鸿蒙中Axios数据请求的封装和配置方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.配置权限 应用级权限和系统级权限2.配置网络请求的代码3.下载在Entry中 下载AxIOS4.封装Htt

Spring中配置ContextLoaderListener方式

《Spring中配置ContextLoaderListener方式》:本文主要介绍Spring中配置ContextLoaderListener方式,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录Spring中配置ContextLoaderLishttp://www.chinasem.cntene

python连接本地SQL server详细图文教程

《python连接本地SQLserver详细图文教程》在数据分析领域,经常需要从数据库中获取数据进行分析和处理,下面:本文主要介绍python连接本地SQLserver的相关资料,文中通过代码... 目录一.设置本地账号1.新建用户2.开启双重验证3,开启TCP/IP本地服务二js.python连接实例1.

如何解决mmcv无法安装或安装之后报错问题

《如何解决mmcv无法安装或安装之后报错问题》:本文主要介绍如何解决mmcv无法安装或安装之后报错问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mmcv无法安装或安装之后报错问题1.当我们运行YOwww.chinasem.cnLO时遇到2.找到下图所示这里3.

浅谈配置MMCV环境,解决报错,版本不匹配问题

《浅谈配置MMCV环境,解决报错,版本不匹配问题》:本文主要介绍浅谈配置MMCV环境,解决报错,版本不匹配问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录配置MMCV环境,解决报错,版本不匹配错误示例正确示例总结配置MMCV环境,解决报错,版本不匹配在col

Nginx中配置HTTP/2协议的详细指南

《Nginx中配置HTTP/2协议的详细指南》HTTP/2是HTTP协议的下一代版本,旨在提高性能、减少延迟并优化现代网络环境中的通信效率,本文将为大家介绍Nginx配置HTTP/2协议想详细步骤,需... 目录一、HTTP/2 协议概述1.HTTP/22. HTTP/2 的核心特性3. HTTP/2 的优

Python 安装和配置flask, flask_cors的图文教程

《Python安装和配置flask,flask_cors的图文教程》:本文主要介绍Python安装和配置flask,flask_cors的图文教程,本文通过图文并茂的形式给大家介绍的非常详细,... 目录一.python安装:二,配置环境变量,三:检查Python安装和环境变量,四:安装flask和flas

Java图片压缩三种高效压缩方案详细解析

《Java图片压缩三种高效压缩方案详细解析》图片压缩通常涉及减少图片的尺寸缩放、调整图片的质量(针对JPEG、PNG等)、使用特定的算法来减少图片的数据量等,:本文主要介绍Java图片压缩三种高效... 目录一、基于OpenCV的智能尺寸压缩技术亮点:适用场景:二、JPEG质量参数压缩关键技术:压缩效果对比