欢迎这位怪蜀黍来到《大数据集群运维(18)Idea创建Scala的Maven项目 - 大码王 - 博客园》

关闭页面特效

 


  • Idea版本(2018.1.5)
  • Scala版本(2.11.0)
  • Java版本(1.8.0_151)

创建Scala的Maven项目

Idea新建项目如图,输入GroupId和ArtifactId之后点击“下一步”->配置Maven home目录(默认即可)->输入工程名“完成”,Idea自动构建项目:

运行生成的App文件!

运行报错

生成的App函数内容如下:

package com

/**
 * Hello world!
 *
 */
object App extends Application {
  println( "Hello World!" )
}

问题1:println 函数不能识别

进入pom.xml文件,找到Scala版本代码:

  <properties>
    <scala.version>2.7.0</scala.version>
  </properties>

可以看到Idea自动导入的Scala版本是2.7.0,而我自己使用的是2.11.0,修改成如下版本,问题解决:

  <properties>
    <scala.version>2.11.0</scala.version>
  </properties>

不确定自己Scala版本,可以点击“File”->Project Structure, 查看下图:

问题2:找不到Application

运行报下面错误:

Error:(7, 20) not found: type Application
    object App extends Application {

查找到stackoverflow有同样的问题,是说 Scala2.9以后就弃用了Application,所以使用2.11版本要用App替代Application,用Main替代App,需要将App文件修改成下面代码:
stackoverflow连接:https://stackoverflow.com/questions/26176509/why-does-2-11-1-fail-with-error-not-found-type-application

package com

/**
 * Hello world!
 *
 */
object Main extends App {
  println( "Hello World!" )
}

继续运行,报下面版本错误

问题3:Scala signature JUnit4 has wrong version

Error:scalac: error while loading JUnit4, Scala signature JUnit4 has wrong version
 expected: 5.0
 found: 4.1 in JUnit4.class

解决办法:将maven自动生成的test下面的MySpec文件删除就好了

再次运行,终于看到久违的Hello World!

 posted on   大码王  阅读(314)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具

成都

复制代码

喜欢请打赏

扫描二维码打赏

了解更多

点击右上角即可分享
微信分享提示

目录导航