(一)创建项目
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. jdbc的数据库驱动类DriverManager.getConnection()详解

    1.Oracle8/8i/9i数据库(thin模式) Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); ...

  2. lastlog---显示系统中所有用户最近一次登录信息。

    lastlog命令用于显示系统中所有用户最近一次登录信息. lastlog文件在每次有用户登录时被查询.可以使用lastlog命令检查某特定用户上次登录的时间,并格式化输出上次登录日志/var/log ...

  3. POJ——T 1961 Period

    http://poj.org/problem?id=1961 Time Limit: 3000MS   Memory Limit: 30000K Total Submissions: 18542   ...

  4. 深度学习 Deep LearningUFLDL 最新Tutorial 学习笔记 2:Logistic Regression

    1 Logistic Regression 简述 Linear Regression 研究连续量的变化情况,而Logistic Regression则研究离散量的情况.简单地说就是对于推断一个训练样本 ...

  5. 从USB闪存驱动器启动 Hiren的BootCD --制作U盘启动盘

    从USB闪存驱动器启动 Hiren的BootCD 原文  http://www.hirensbootcd.org/usb-booting/ 本文基本上是翻译而来 要从USB闪存驱动器启动Hiren的B ...

  6. local-语言切换监听事件

    今天在更改时钟的问题的时候,需要监听语言切换来刷新时钟的显示.记录下监听方法 //注册监听事件 intentFilter.addAction(Intent.ACTION_LOCALE_CHANGED) ...

  7. 为您的Office文档加把锁-ADRMS的安装

    为您的Office文档加把锁-ADRMS的安装 如今不少企业越来越重视自己KM(知识管理系统)的建立对于KM的建立实施虽然可以有效地解决企业在知识管理上的问题对于一些具有商业利益关系的机密文件(例如: ...

  8. 《二》Java IO 流的分类介绍

    一.根据流向分为输入流和输出流: 注意输入流和输出流是相对于程序而言的. 输出:把程序(内存)中的内容输出到磁盘.光盘等存储设备中        输入:读取外部数据(磁盘.光盘等存储设备的数据)到程序 ...

  9. BZOJ4372: 烁烁的游戏(动态点分治)

    Description 背景:烁烁很喜欢爬树,这吓坏了树上的皮皮鼠.题意:给定一颗n个节点的树,边权均为1,初始树上没有皮皮鼠.烁烁他每次会跳到一个节点u,把周围与他距离不超过d的节点各吸引出w只皮皮 ...

  10. BZOJ3626: [LNOI2014]LCA(树链剖分+线段树)

    Description 给出一个n个节点的有根树(编号为0到n-1,根节点为0).一个点的深度定义为这个节点到根的距离+1.设dep[i]表示点i的深度,LCA(i,j)表示i与j的最近公共祖先.有q ...