Scala是运行在JVM上的语言,跑在标准的Java平台上,可以与所有的Java库实现无缝交互。

下面运行一个小程序来看看在JVM上如何使用java命令来运行Scala程序。

在编写代码之前,我们首先要配置环境变量。

在Windows环境下Java和Scala的环境变量配置:

1.Java环境变量

JAVA_HOME = C:/Program Files/Java/jdk1.6.0_21(我本机的安装目录)

CLASSPATH = .;%JAVA_HOME%/lib;(. 代表包含当前路径)

Path  = %JAVA_HOME%/bin

2.Scala环境变量

SCALA_HOME = C:/scala-2.8.0.final

Path = %SCALA_HOME%/bin

OK!环境变量配置完了,开始写代码,我们还是以HelloWorld为例:

在C:盘跟目录下建立了HelloWorld.scala文件,内容如下:

Scala Code:

object HelloWorld{

def main(args: Array[String]) {

println("hello world!")

}

}

文件建好了,开始编译:

先打开命令行文件->然后到C盘根目录下输入scalac HelloWorld.scala

C:/>scalac HelloWorld.scala

很顺利编译通过,我们发现在C盘下生成了两个编译后的class文件HelloWorld.class和HelloWorld$.class

编译好了,运行Scala程序:

继续输入scala HelloWorld OH!我们看到了我们想要的hello world!

C:/>scala HelloWorld

hello world!

下面我们试着用java去运行一下:

输入java HelloWorld

C:/>java HelloWorld

Exception in thread "main" java.lang.NoClassDefFoundError: scala/ScalaObject

OH!没有通过!得到了一大堆堆栈输出以至于我没办法把如此多的输出全部写出来。

是什么原因呢?原来在用java命令运行scala代码的时候需要引入scala类库scala-library.jar下面我我们试试把命令写成这样的格式。

C:/>java -cp %SCALA_HOME%/lib/scala-library.jar;. HelloWorld

C:/>java -cp %SCALA_HOME%/lib/scala-library.jar;. HelloWorld

hello world!

终于看到了hello world!

我们引入scala类库以后得到了我们想要的结果,我们注意到在类库结束以后有";."符号"."表示当前路径去掉它也不影响运行效果,因为HelloWorld本身就在C盘根目录下。

如果在定义环境变量的时候就把scala的类库写到java的CLASS_PATH变量里面的话

CLASSPATH = .;%JAVA_HOME%/lib;%SCALA_HOME%/lib/scala-library.jar

我们直接运行java HelloWorld,就可以得到输出了!

C:/>java HelloWorld

hello world!

参考 地址:http://blog.csdn.net/leano/article/details/5867108

java 运行scala_使用java命令运行scala代码相关推荐

  1. npm命令运行时报错_npm命令运行时报错_使用npm命令时报错误Error: EACCES: permission denied...

    执行npm link 报错 liuffsunny@liufangfangdeMacBook-Pro 02learnCli % npm link npm ERR! code EACCES npm ERR ...

  2. linux jobs继续运行,Linux jobs等前后台运行命令详解

    A,Shell支持作用控制,有以下命令: 1. command& 让进程在后台运行 2. jobs 查看后台运行的进程 3. fg %n 让后台运行的进程n到前台来 4. bg %n 让进程n ...

  3. centos装java配件_CentOS安装JAVA

    一般情况下,我们都要将linux自带的OPENJDK卸载掉,然后安装SUN的JDK. 首先查看Linux自带的JDK是否已安装. 输入如下命令,查看已经安装的JAVA版本信息. Linux代码 jav ...

  4. (005) java后台开发之Mac终端命令运行java

    Mac终端命令运行java 由于mac已经装好java环境,所以直接课运行java命令,很方便. 1.编译一个java文件: javac /Users/用户名/Desktop/HelloWorld.j ...

  5. Linux中如何java联网,如何在Java中运行Linux命令?

    慕运维8079593 您可以java.lang.Runtime.exec用来运行简单的代码.这样可以返回a,Process并且您可以直接读取其标准输出,而不必将输出临时存储在磁盘上.例如,这是一个完整 ...

  6. java命令框编译代码的方式_在命令行模式下如何编译运行Java代码

    由于已经习惯了在Windows环境中进行开发,最近在尝试将开发环境转移到Linux上面.遇到一篇值得参考的外文,特翻译记录一下.[只翻译了部分] 一直被集成开发环境和自动构建工具"溺爱&qu ...

  7. Java 跨平台运行机理:Dos 命令在桌面新建文件夹,并在其中编译、运行一段 Java 程序

    文章目录 前言 一.打开 Dos 命令界面 二.Dos 查看桌面文件目录序列 三.Dos 创建文件夹 四.相关 Windows 系统 Shell 命令补充 五.Dos 进入文件夹编写 Java 文件 ...

  8. java运行提示runtime,Java 执行运行时命令 Runtime

    package cn.com.cloud.utils; import java.io.BufferedReader; import java.io.IOException; import java.i ...

  9. Windows中使用Java执行shell命令运行检测,通过sonarqube的webapi获取扫描结果

    目录 1,实验环境 2,前言(环境配置) 3,通过Java执行shell命令扫描项目 3.1 主要思路 3.2 参考代码 3.3 运行效果 4,通过sonarqube的webapi获取项目扫描结果 4 ...

最新文章

  1. 所有mysql变量都以 开头对不对_PHP复习题(选择题)
  2. 35岁危机可能是真的!调查显示在领英上年龄越大越难找工作,得贴年轻头像才行...
  3. 配置访问oracle_SpringBoot中application.properties的常用配置
  4. 为 Vue3 学点 TypeScript, 命名空间(namespace)是什么?
  5. Rabbitmq消息发送事务与确认机制
  6. 信息学奥赛一本通(1113:不与最大数相同的数字之和)
  7. Windows 10 PC 安装 Docker CE
  8. 【笔记】双线性池化(Bilinear Pooling)详解、改进及应用
  9. SQLite 插入大量数据慢的解决方法
  10. mysqldump备份过程中都干了些什么
  11. UploadBean实现文件上传(转)
  12. 微型计算机在硬件上是由,208可打印本资料微机原理与汇编期末考试试卷A卷答案...
  13. Linux的PDF工具,Linux 系统中的pdf阅读器以及工具
  14. mysql运行sql错误1055_sql数据库执行错误代码1055怎么解决?
  15. ANSYS有限元分析
  16. LNMP详解(九)——Nginx虚拟IP实战
  17. 苹果输入法微信换行及微信群接龙
  18. 【bestbanking】银行业数字化转型结硕果
  19. android 文字大小设计,为什么设计稿的文字大小和开发的不一致
  20. 手机屏幕显示正常但是触摸有一部分出问题,是内屏坏了吗?保修期内手机该不该走官方售后?

热门文章

  1. JavaScript加密库Crypto-JS的使用
  2. Linux下架设rsync服务器
  3. 剑指offer(C++)-JZ8:二叉树的下一个结点(数据结构-树)
  4. java mvp模式_MVP模式入门(结合Rxjava,Retrofit)
  5. python容易出错的地方_Python中try-except出错后如何从try出错地方继续执行?
  6. 常见问题_轴承零件加工常见问题?
  7. 、简述global关键字的作用_二十三、Python变量作用域(局部变量和全局变量)
  8. 我,23 岁 深漂女 Python自动化测试的心路历程|2021 总结
  9. ❤️不一样的测试之旅:医疗行业软件测试有什么不一样?❤️
  10. mysql的远程服务开启_mysql开启远程服务