(一)创建项目
1、先创建一个目录,用于放置目录 中的所有内容,如
mkdir sbtdemo
 
2、创建相关的目录
吐槽一下,好怀念maven,帮你直接生成,尤其是eclipse中的new maven project
据说sbt也是可以的,使用一个叫做giter8的插件,但好麻烦,有兴趣的可以试一下
touch build.sbt
 mkdir src
 mkdir src/main
 mkdir src/main/java
 mkdir src/main/resources
 mkdir src/main/scala
 mkdir src/test
 mkdir src/test/java
 mkdir src/test/resources
 mkdir src/test/scala
 mkdir project
 
3、在build.sbt中输入内容:

name := "sbtdemo"

organization := "com.lujinhong"

version := "0.0.1"

sbtPlugin := true

scalaVersion := "2.10.5"

 

 

(二)转为eclipse可以导入的项目

使用了这个插件https://github.com/typesafehub/sbteclipse

 

1、在~/.sbt/0.13/plugins/plugins.sbt中输入以下内容:

addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse-plugin" % "4.0.0”)

 

 

2、生成eclipse相关的文件

sbt eclipse

此时就生成了.project文件

 

3、在eclipse中导入项目即可

 

(三)创建scala文件

1、在src/main/scala中创建SbtDemo.scala,内容如下:

object SbtDemo {
def main(args: Array[String]) = {
val demo = new Demo
demo.printHello
}
} class Demo{
def printHello() = {
print("Hello World");
} }

 

2、运行项目

 

 $sbt run

[info] Loading global plugins from /Users/liaoliuqing/.sbt/0.13/plugins

[info] Set current project to sbtdemo (in build file:/Users/liaoliuqing/99_Project/1_myCodes/sbtdemo/)

[info] Compiling 1 Scala source to /Users/liaoliuqing/99_Project/1_myCodes/sbtdemo/target/scala-2.10/sbt-0.13/classes...

[info] 'compiler-interface' not yet compiled for Scala 2.10.5. Compiling...

[info]   Compilation completed in 24.361 s

[info] Running SbtDemo

Hello World[success] Total time: 26 s, completed 2015-7-14 18:48:37

 
3、或者打包项目:
sbt clean package
此时生成了./target/scala-2.10/sbt-0.13/sbtdemo-0.0.1.jar文件
 
(四)添加依赖
在built.sbt中添加以下内容

// 添加源代码编译或者运行期间使用的依赖
libraryDependencies += "ch.qos.logback" % "logback-core" % "1.0.0"

libraryDependencies += "ch.qos.logback" % "logback-classic" % "1.0.0"

// 或者

libraryDependencies ++= Seq(
"ch.qos.logback" % "logback-core" % "1.0.0",
"ch.qos.logback" % "logback-classic" % "1.0.0",
...
)

重新编译即可

依赖的内容与maven类似,也可以通过maven repository查询

 

 

另外,好消息:使用Idea一切搞定,坏消息,sbt太慢太慢了,根本无法接受,国内的镜像也很少了,还是先用maven吧。

sbt教程的更多相关文章

  1. sbt 以及 IDEA sbt 插件安装配置教程(转)

    1. 在Windows中安装sbt 下载 官网: http://www.scala-sbt.org/ github: https://github.com/sbt/sbt/releases/downl ...

  2. sbt结合IDEA对Spark进行断点调试开发

    笔者出于工作及学习的目的,经常与Spark源码打交道,也难免对Spark源码做修改及测试.本人一向讲究借助工具提升效率,开发Spark过程中也在摸索如何更加顺畅的对源码进行调试. Spark基于Sca ...

  3. Spark开发环境搭建(IDEA、Scala、SVN、SBT)

    软件版本 软件信息 软件名称 版本 下载地址 备注 Java 1.8 https://www.oracle.com/technetwork/java/javase/downloads/jdk8-dow ...

  4. 【配置、开发】Spark入门教程[2]

    本教程源于2016年3月出版书籍<Spark原理.机制及应用> ,在此以知识共享为初衷公开部分内容,如有兴趣,请支持正版书籍. Spark为使用者提供了大量的工具和脚本文件,使得其部署与开 ...

  5. jquery教程-Jquery 获取标签个数 size()函数用法

    jquery教程-Jquery 获取标签个数 size()函数用法,size() 方法返回被 jQuery 选择器匹配的元素的数量. 语法 $(selector).size()     jQuery ...

  6. Oracle中RMAN基本命令教程

    一.target--连接数据库 1.本地: [oracle@oracle ~]$ rman target / 2.远程: [oracle@oracle ~]$ rman target sys/orac ...

  7. PySpark初级教程——第一步大数据分析(附代码实现)

    概述 数据正以前所未有的速度与日俱增 如何存储.处理和使用这些数据来进行机器学习?spark正可以应对这些问题 了解Spark是什么,它是如何工作的,以及涉及的不同组件是什么 简介 我们正在以前所未有 ...

  8. Spring Boot 2.x基础教程:使用Flyway管理数据库版本

    之前已经介绍了很多在Spring Boot中使用MySQL的案例,包含了Spring Boot最原始的JdbcTemplate.Spring Data JPA以及我们国内最常用的MyBatis.同时, ...

  9. Angular2入门系列教程7-HTTP(一)-使用Angular2自带的http进行网络请求

    上一篇:Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数 感觉这篇不是很好写,因为涉及到网络请求,如果采用真实的网络请求,这个例子大家拿到手估计还要自己写一个web ...

随机推荐

  1. BZOJ 1572 贪心(priority_queue)

    思路: 维护两个堆 一个按时间 (从后到前)的 另一个是按价值(从大到小)的 从时间的堆向价值的堆倒 每回(合法状态下)取当前的堆顶 判一判 //By SiriusRen #include <q ...

  2. Kinect 开发 —— 控制PPT播放

    实现Kinect控制幻灯片播放很简单,主要思路是:使用Kinect捕捉人体动作,然后根据识别出来的动作向系统发出点击向前,向后按键的事件,从而使得幻灯片能够切换. 这里的核心功能在于手势的识别,我们在 ...

  3. C# 正整数和非零正整数校验

    /// <summary> /// 1. 校验正整数(包含0) /// </summary> public static bool isInterger(string str) ...

  4. background 背景认知

    background 背景 背景颜色 /*背景颜色为红色*/ p { background-color:ren; } 网页背景不仅可以设置颜色还可以插入图片 /*为背景插入图片*/ body { ba ...

  5. nodejs学习(二)--express热更新nodemon,自启动项目

    一.说一下 每次修改文件,我们都需要重启服务器npm start,很麻烦,所以使用引入nodemon插件,解决这个问题,实现保存文件,即自启动刷新项目 二.直接开码 npm install nodem ...

  6. Java-Spring-WebService最基础的配置示例

    很早很早之前,就初步学习了WebService,感觉还是比较"好"的.  使用Web服务,感觉就像普通API一样,和HTTP接口比较起来.  WebService有个很大的局限,就 ...

  7. Css学习总结(1)——20个很有用的CSS技巧

    1. 黑白图像 这段代码会让你的彩色照片显示为黑白照片,是不是很酷? img.desaturate { filter: grayscale(100%); -webkit-filter: graysca ...

  8. 关于multiprocessing,我也来聊几句

    起因:近期须要从hbase中向 ES中导一批数据.使用multiprocessing 启动多个程序同一时候向ES导数据.能够大大提高效率.由于导数的任务是能够依照时间切割的. 一段简单的代码例如以下: ...

  9. Exclusive or

    题目连接 题意: 每次给一个n.求 (2≤n<10500) 分析: 先说一下自己的想法,假设将n换成二进制数,也就一两千位左右,那么一位一位处理是能够接受的. 将0-n写成二进制形式后,显然全部 ...

  10. 码农的救赎:使用Github Pages搭建博客

    人生若仅仅如初见,都恨太晚 据说有博客的人比没博客人的薪水要高非常多,相传写博客也是一个高手的标配,尽管之前一直有在写(在这里).可是孤既不是高手.薪水还比别人少.之前一直在CSDN上面写博客,那是一 ...