欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

scala脚本编程

程序员文章站 2024-02-20 08:09:22
...

来自:http://blog.csdn.net/lovehuangjiaju/article/details/47725289

使用Scala进行Linux脚本编程
#!bin/sh
exec scala "$0" "[email protected]"
!#
println("Hello, Linux World")

存储为hello.sh
执行 ./hello.sh

代码中, #!符号表示的是Unix shell脚本的开始,它会调用Unix Bourne shell。exce命令是内置的shell,表示需要执行scala 命令,其中0绑定的是hello.sh脚本名称,@ 绑定的是我们输入的参数。!#表示脚本声明头部的结束。

还可以定义自己的main方法:

#!/bin/sh
exec scala "$0" "[email protected]"
!#
object Hello {
  def main(args: Array[String]) {
    println("Hello, world")
    args.foreach(println)
  }
}
Hello.main(args)

添加依赖的jar包, 用:分开

#!/bin/sh
exec scala -classpath "lib/slick_2.11_2.1.0.jar:lib/mysql-connector-java-5.1.18-bin.jar" "$0" "[email protected]"
!#
import scala.slick.driver.MySQLDriver.simple._
........

基本格式:
#!/bin/sh //样板代码
exec scala -classpath "lib/slick_2.11_2.1.0.jar:lib/mysql-connector-java-5.1.18-bin.jar" "$0" "[email protected]"
!# //样板代码

....................

CoffeeExample.main(args) //样板代码

加速代码执行:
scala脚本在执行的过程中,也是通过编译、执行的步骤来进行的,为了加速脚本执行,第一次编译的时候将编译后的jar包保存,如果jar包创建后没有变化的话,直接使用以前编译好的jar包,实现方法是在脚本声明时使用-savecompiled

#!/bin/sh
exec scala -savecompiled "$0" "[email protected]"
!#
println("Hello, world!")
args foreach println