sbt类似与maven, gradle的项目管理工具,主要用在scala,也可以用在java项目,本文介绍一下常用的使用命令和语法 安装 mac brew install sbt redhat¢os...session save 保存当前会话信息到build.sbt test执行测试, ~testQuick自动检测并执行测试 projects列出所有项目 build.sbt语法 # 设置scala...")) # 如果配置了子项目,则聚合起来;父项目上执行的命令,也会广播到子项目 .aggregate(helloCore) # 设置对子项目的依赖 .dependsOn(helloCore...后terminal窗口会停在Getting org.scala-sbt sbt上,也不知道发生了什么。...可以用如下命令,查看程序进展tail -f $HOME/.sbt/boot/update.log 参考 sbt by example stuck at "Getting org.scala-sbt sbt
build.sbt: 项目的主构建文件,包含了项目的设置(settings)、依赖项(dependencies)和任务(tasks)等。这是定义项目构建过程的关键文件。...插件可以添加新的功能和任务到项目的构建过程中。 src/: 这个目录包含了项目的源代码和资源文件。 main/: 主要的源代码目录,包含了项目的主要代码。...Maven 通常执行全量编译,这在大型项目中会导致编译时间较长。此外,Maven 的命令行工具需要每次执行任务时重新启动 JVM,这可能导致较长的启动时间。...交互式命令行 sbt 提供一个交互式命令行界面,开发者可以在其中执行各种任务(如编译、测试、打包等)而无需每次重新启动构建工具。这减少了启动时间并提高了开发效率。 3....例如,编译和测试任务可以同时进行。 总的来说,sbt 通过其灵活的依赖管理系统和高效的映射构建机制,成为 Scala 和 Java 项目中强大的构建工具。
SBT 一直以来都是 Scala 开发者不可言说的痛,最主要的原因就是官方文档维护质量较差,没有经过系统的、循序渐进式的整理,导致初学者入门门槛较高。...虽然也有其它构建工具可以选择(例如 Mill), 但是在短时间内基本上不可能撼动 SBT 的地位,毕竟它是 Scala 名正言顺的亲儿子。...-Dprop=value 自动触发任务 在 SBT 任务名前加上 ~ ,则当有文件变化时则会自动触发该任务,例如我们在 Play 开发时,可以这样启动项目: sbt ~run 当我们修改了某些文件时,...监测任务执行时间 当我们发现执行 sbt run 启动项目后,浏览器界面久久刷新不出来,这时我们就需要知道时间到底耗在哪儿了?...执行如下命令则会打印各个任务的执行时间: sbt -Dsbt.task.timings=true clean run 如果是Windows的话需要在参数两边加引号: sbt "-Dsbt.task.timings
第一次启动时,由于SBT要下载大量的依赖,所以时间可能会久一点,倒数第二行表明,Play项目已经在9000端口启动成功了。...由于SBT要从国外服务器下载依赖,所以第一次启动的时间会比较久,如果想加快启动速度请参考配置Repox社区公服。 我们来看看效果吧,在浏览器中访问:http://localhost:9000 ?...Play项目的默认启动端口是9000,如果想换成其它端口,在命令行中先执行sbt,进入sbt控制台后在执行run 9001。 ...发布Play项目 Play项目的发布也是通过sbt命令完成的,进入命令行执行sbt dist,命令执行完成后,在target\universal目录下会生成应用文件play-scala-starter-example...如果修改了Play项目的某些配置,但是在IDEA中没有立即生效,单击右侧SBT projects窗口左上角的蓝色刷新按钮 即可。
SBT 是 Scala 的构建工具,全称是 Simple Build Tool, 类似 Maven 或 Gradle。...由于SBT 1.3.0包含了多项性能提升,如果是已有的本地项目,请手动将项目的SBT构建版本改成1.3.0 。...shell , 第一次进入 sbt shell 时,由于需要下载相关依赖,大概需要几十秒时间,第二次及以后进入 sbt shell 会很快。...检查当前项目的SBT构建版本是否为1.3.0, sbt:hello-scala> sbtVersion [info] 1.3.0 sbt:hello-scala> 2)确认全局仓库是否已经覆盖项目自身仓库...3)编译并运行 确认无误后执行编译命令, sbt:hello-scala> compile [info] Compiling 1 Scala source to D:\idea-projects\hello-scala
从各方面报道来看Spark抱负并非池鱼,而是希望替代Hadoop在大数据中的地位,成为大数据处理的主流标准,不过Spark还没有太多大项目的检验,离这个目标还有很大路要走。...5 Ant1.9.5 构建编译打包 6 Spark1.4.0 主角 7 Intillj IDEA 开发IDE 8 SBT scala-spark专属打包构建工具 9 Centos6或Centos7 集群运行的...(1)安装使用maven 下载地址 https://maven.apache.org/ (2)安装使用sbt 下载地址 http://www.scala-sbt.org/ 这里推荐用...sbt,专门针对scala项目的进行构建打包的 好吧,也许你需要一个demo来帮助你理解?...在IDEA中,创建一个Scala的SBT项目: 然后在build.sbt文件中,加入如下依赖: Java代码 name := "spark2117" version := "1.0"
建立启动sbt的脚本 # mkdir /opt/scala/sbt/ # cd /opt/scala/sbt/ # touch sbt # 脚本内容如下,注意sbt-launch.jar的路径...虽然这需要花费一些额外的时间,但好在 Scala 的语法非常直观,基本上通过例子就可以模仿写出自己的程序来。 如果对 Scala 语言感兴趣,可以参考这份教程来了解其基本的语法。...开头1到4行的是一系列的 import 语句,目的是使用一些已经封装好的类,与 R 中的 library() 和 Python 的 import 语句类似。...22和24行插入了两句获取时间的函数,是为了评估模型训练(23行)花费的时间。 在第31行中,我们用拟合出的模型对训练集本身进行了预测。...parsed.map(_.features) 的目的是取出训练集中的自变量部分,而 predict() 方法返回的结果就是因变量的预测值向量。
sbt new playframework/play-scala-seed.g8 在依赖信息加载完成后,该工具将提示并要求我们输入新项目的名称和组织信息 This template generates...项目文件夹中并启动该项目 cd baeldung-play-framework sbt run 这是我们第一次启动项目,可能会花点时间在构建和编译上。...项目结构 现在,可以使用 IntelliJ IDE 打开项目并查看项目的目录结构 在项目目录中,有四个文件夹是由 sbt 模板创建的,分别是 app/controllers, app/views, conf...编写测试用例 最后,我们来看看有 sbt 命令行工具在创建 Play 框架项目的时候生成的测试用例文件夹。...该项目的源码可以在 GitHub 上获得。 本文翻译自 https://www.baeldung.com/scala/play-framework-intro
文章目录 1 Overview 2 问题分析 2.1 sbt 本地问题 2.2 IDEA sbt 的配置问题 2.3 一些测试 3 Summary 1 Overview 有用过 sbt 开发项目的同学应该都有这样的体会...2 问题分析 其实以上的情况是笔者之前经常遇到的问题,所以下定决定花点时间解决这个问题。...首先要明白 sbt 其实是一个 Scala 或者 Java 的一个构建工具,使用上的目的和方式其实跟 Maven 是大相径庭的,如果你是 Maven 的老司机,要解决 sbt 的问题,应该不难。...: http://repo.scala-sbt.org/scalasbt/sbt-plugin-releases/, [organization]/[module]/(scala_[scalaVersion...更多 sbt 配置参数可以参考官方文档。这里需要提示,当用命令行构建项目的时候,上述参数应该是这样的格式 -Dprop=value,以下是我构建项目的时候,输入命令的一个例子。
开发应用程序; 使用 Sbt 工具对 Scala 代码进行构建管理; 其中前两项属于 Spark 计算环境搭建,后两项属于 Scala 编程。...5 Scala 开发环境搭建 如果要开发正式的应用,一个好用的构建工具是必须的,不然光是管理 jar 包繁琐依赖就会耗费大量时间,另外,各个版本的 scala 运行时库可能不兼容,支持多目标版本编译也需要专业工具支持才行...我这里选择 sbt,原因是这三者虽然功能上难分伯仲,但 sbt 与 scala 具备天然的亲和性,它自身是使用 scala 编写的,其工程定义文件实际也是一个 scala 程序,使用它构建 scala...5.1 sbt 简介 sbt 官网: http://www.scala-sbt.org, 在这上面有有很详细的 中文文档。 sbt 从官网下载最新版本,开箱即可使用,其安装说名这里不再赘述。...但毕竟还是在浅滩,要真实使用 spark 解决比较大规模的计算任务,我们还要持续向 Spark/scala 之海的深水区探索: 生产环境需要构建可靠集群,解决 HDFS NameNode, Spark
二、SBT简介 使用Scala语言编程,最好使用SBT框架,可以自动帮你完成包管理等,相当于java中的maven,下面先简单介绍一下SBT基础。 ...首先安装SBT,很简单,只需要下载安装包即可(http://www.scala-sbt.org/release/docs/Installing-sbt-on-Windows.html),具体安装过程以及配置等...安装完成之后,在IDEA中安装sbt插件,然后选择创建SBT项目,与普通Scala语言最主要的不同是会创建一个build.sbt文件,这个文件主要记录的就是项目的依赖等,要添加依赖就可以添加如下两行代码...引入akka只需要在build.sbt文件中添加在SBT操作一节中介绍的代码即可,但是要根据自己的Scala版本以及要使用的akka版本进行修改。添加完之后IDEA会自动去下载akka的actor包。...首先建立一个RemoteActor项目,将build.sbt中项目的引用改为libraryDependencies ++= Seq("com.typesafe.akka" % "akka-actor_2.11
要用spark的话,最好还是使用scala语言。在idea的plugin里安装scala,然后可以去下载个scala的特定版本,不同的scala版本支持的spark版本是不同的。...这个需要在你定下用哪个spark版本后,再去决定下载哪个版本的scala。 ? 我这里就搞了两个scala版本。2.11和2.12能支持的spark版本大不相同。...具体scala和idea怎么配,网上多的是教程。 配好后,我们来新建一个project,然后选择sbt。 ? ? 在scala这里选择一个scala版本。 然后创建完毕这个sbt项目。...注意,你会经历比较漫长的等待,等待sbt的各种jar包下载完毕,然后你的项目才能创建成功。 sbt你可以理解为一种构建方式,和maven、gradle一样,通过sbt能管理你需要依赖的jar。...创建后的项目长这样,build.sbt里面就是配置项目的基本属性的,用过gradle的应该比较熟悉这种写法。
Spark可以轻松的实现Mapreduce任务: scala> val wordCounts = textFile.flatMap(line => line.split(" ")).map(word =...你也可以通过bin/spark-shell向集群提交任务,可以参考编程指南 独立应用 要使用spark api写一个自己的应用也很简单,可以基于scala、java、python去写一些简单的应用。...正确的工作,还需要创建SimpleApp.scala以及simple.sbt。.../simple.sbt ./src ./src/main ./src/main/scala ..../src/main/scala/SimpleApp.scala # Package a jar containing your application 运行sbt命令进行打包 $ sbt package
单位领导要求我研究一下geotrellis(GITHUB地址:https://github.com/geotrellis/geotrellis,官网http://geotrellis.io/),于是我只能接受这个苦逼的任务...Geotrellis主要涉及到的知识点包括Scala,sbt,Spark,Akka。貌似每项都不是善茬,基本都没有怎么接触过,除了Scala稍微接触过,那么只能完全从头开始学习了。...完全没有思路,看到sbt,那就开始学习sbt吧,sbt其实是相当于Maven的一个框架,能够帮我们管理scala项目,刚开始为了跑例子,也没有怎么研究,就是看到说直接到项目目录运行....过了一天时间,下载了一堆jar,成功跑了起来,出来了应有的效果,心中甚是欢喜,向领导汇报一下,领导看了一眼,又提了一堆记也没记住的问题让去研究,算是完成了第一步。...部署了Spark环境(参考之前的一篇文章使用Ambari安装hadoop集群),然后又研究了sbt,在Windows的笔记本上搭建了开发环境(IDEA+SCALA+SBT),这块网上的介绍也很多,不在这里介绍
,砖厂官网有很多介绍,包括项目的 Github 地址,大家可以上去看看,我也打算测一下,并且研究一下源代码,所以今天开始写一些探索这个项目的学习笔记。...[ext], bootOnly sbt-ivy-snapshots: https://repo.scala-sbt.org/scalasbt/ivy-snapshots/, [organization...[ext], bootOnly sbt-plugin-releases: https://repo.scala-sbt.org/scalasbt/sbt-plugin-releases/, [organization...]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier])....后面会讲讲项目的结构和看看 Delta Lake 是如何实现 ACID 事务,和乐观锁以及写入数据提供的一致性读取等功能。
(Reporter.scala:70) at scala.tools.nsc.Global.globalError(Global.scala:229) at scala.tools.nsc.Global...sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at sbt.compiler.AnalyzingCompiler.call...(AnalyzingCompiler.scala:101) at sbt.compiler.AnalyzingCompiler.compile(AnalyzingCompiler.scala:47)...at sbt.compiler.AnalyzingCompiler.compile(AnalyzingCompiler.scala:41) at org.jetbrains.jps.incremental.scala.local.IdeaIncrementalCompiler.compile...org.jetbrains.jps.incremental.messages包 org/jetbrains/jps/incremental/messages/BuildMessage$Kind 解决办法: 我重新换了jdk1.8 的版本,把项目的
前言 我们用IDEA创建Spark项目的时候,默认都是使用SBT作为构建工具的,那么SBT是个啥?...SBT是 Scala 的构建工具,全称是 Simple Build Tool, 类似 Maven 或 Gradle。...SBT 的野心很大,采用Scala编程语言本身编写配置文件,这使得它稍显另类,虽然增强了灵活性,但是对于初学者来说同时也增加了上手难度。 另外由于SBT默认从国外下载依赖,导致第一次构建非常缓慢。...设置仓库 如果是Windows系统,则进入CMD执行如下命令: cd ~ mkdir .sbt cd .\.sbt\ echo "">repositories start repositories 如果是...Mac或Linux系统,则进入Bash执行如下命令: cd ~ mkdir .sbt cd .sbt vi repositories 然后创建 repositories 文件内容如下,并将文件拷贝到
注:先前的文章里记得有个地方对这个问题表述的不正确,有时间再改。...原错误信息 原错误出现的IDEA版本:2017.2; 原错误的出现场景:每次新建SBT项目并添加完SBT依赖之后出现; 原错误的表现:build.sbt文件内容解析全部是红的,并且sbt shell报错...from C:/Users/msi/.IntelliJIdea2017.2/config/plugins/Scala/launcher/sbt-structure-1.1.jar [error] java.lang.ClassNotFoundException...[error] at xsbt.boot.Boot$.main(Boot.scala:17) [error] at xsbt.boot.Boot.main(Boot.scala) [error] java.lang.ClassNotFoundException...,勾选Use SBT Shell for ...
前言: Spark本身用scala写的,运行在JVM之上。 .../src/main/scala ./src/main/scala/example.scala ..../simple.sbt 然后simple.sbt的内容如下: name := "Simple Project" version := "1.0" scalaVersion := "2.10.4"...橙黄My App:一个项目的名字, 然后执行:sbt package 成功之后执行 ./bin/spark-submit --class "example" ..../target/scala-2.10/simple-project_2.10-1.0.jar 结果如下: 说明确实成功执行了! 结束!
Scala 更出色的 Scala 3 支持 IntelliJ IDEA 2023.2 增强了 Scala 3 支持,专注于简化开发体验。...更好的 sbt 支持 此版本对 IntelliJ IDEA 的 sbt 支持进行了许多改进。 重新打开项目后,为 sbt 设置的环境变量将被保留并正确处理。...此分析方法会考虑在方法中花费的总时间,包括等待时间。 它以毫秒为测量单位,是更强大、更直观的选项。...Gradle、Maven 和 JPS 项目的持续测试 我们扩展了自动测试功能,使其与 Maven、Gradle 和 JPS 构建系统完全兼容。 我们还使持续测试模式更易激活。...将 Docker 容器设为作为运行配置的 _Before Launch_(启动前)任务运行 现在,可以将 Docker 运行配置指定为 _Before Launch_(启动前)任务,从而在另一个配置之前运行
领取专属 10元无门槛券
手把手带您无忧上云