scala 手动建立一个干净的sbt 程序
来源:互联网 发布:mac安装win10怎么切换 编辑:程序博客网 时间:2024/05/24 01:44
我们可以使用intellij idea 帮我们建立sbt 程序,但是会产生很多无用的文件,可以手动的建立一个sbt 程序:
假设你有一个sbt工程叫GBQ5,我们可以建立一个下面的目录结构:
1. build.sbt 主要配置自己的依赖包,包的依赖分为托管和非托管,其中: unmanagedBase := baseDirectory.value / "custom_lib", 配置了非托管的包的路径....
import _root_.sbt.Keys._
import _root_.sbt.Resolver
import _root_.sbt._
import _root_.sbtassembly.Plugin.AssemblyKeys
import AssemblyKeys._
import _root_.sbtassembly.Plugin.AssemblyKeys._
import _root_.sbtassembly.Plugin.MergeStrategy
import _root_.sbtassembly.Plugin._
assemblySettings
mergeStrategy in assembly <<= (mergeStrategy in assembly) { mergeStrategy =>
{
case entry => {
val strategy = mergeStrategy(entry)
if (strategy == MergeStrategy.deduplicate) MergeStrategy.first
else strategy
}
}
}
name := "GBQ5"
version := "1.0"
scalaVersion := "2.10.4"
libraryDependencies += "org.apache.spark" %% "spark-core" % "1.4.1"
libraryDependencies += "org.apache.spark" % "spark-sql_2.10" % "1.4.1"
resolvers += "Job Server Bintray" at "https://dl.bintray.com/spark-jobserver/maven"
libraryDependencies += "spark.jobserver" %% "job-server-api" % "0.6.0" % "provided"
libraryDependencies += "spark.jobserver" %% "job-server-extras" % "0.6.0" % "provided"
unmanagedBase := baseDirectory.value / "custom_lib"
resolvers += Resolver.url("artifactory", url("http://scalasbt.artifactoryonline.com/scalasbt/sbt-plugin-releases"))(Resolver.ivyStylePatterns)
2. custom_lib
存放非托管的jar包, 在进行打包的时候,把非托管的jar包打到自己的包中
3. plugins.sbt
resolvers += Resolver.url("artifactory", url("http://scalasbt.artifactoryonline.com/scalasbt/sbt-plugin-releases"))(Resolver.ivyStylePatterns)
addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.11.2")
4.scala/main/src
在这个目录里写自己的程序即可
程序写完后在GBQ5目录执行sbt assembly 即可打包程序。
- scala 手动建立一个干净的sbt 程序
- 安装intelij + scala + sbt,手动、离线、公司
- Intellij IDEA 手动安装Scala 和SBT
- sbt的安装以及用sbt编译打包scala编写的spark程序
- SBT(Scala Build Tool)系列教程-使用sbt构建第一个简单的HelloWorld程序
- 用Intellij IDEA和SBT建立scala时,新手容易遇到的一些麻烦
- linux中安装Sbt、编译scala程序
- 用IDEA创建sbt的Scala工程
- scala构建工具SBT的使用_Hello_World
- Scala sbt akka Eclipse 环境的配置
- 构建一个干净的环境
- 基于spark运行scala程序(sbt和命令行方法)
- ubuntu14 手动安装sbt
- ubuntu14 手动安装sbt
- sbt构建scala工程
- sbt 构建scala 项目
- [Scala] sbt install script
- sbt构建scala项目
- Android知识体系树
- java工程中一些js问题总结
- CCnet部署中遇到的问题
- iOS开发教程之线程关于多线程的简单介绍
- leetcode206/92---Reverse Linked List I/II(反转链表)
- scala 手动建立一个干净的sbt 程序
- iOS UIActivityIndicatorView用法(菊花旋转)
- Universal_ImageLoader的使用
- 扫描条形码扫不出来的情况
- 生产、消费者模式
- lucene 4.6以上和4.6一下分词需要注意的
- 一篇文章带你看懂云计算的前世今生与未来
- C++中的 virtual destructor
- 写在2016年开篇