使用 maven 创建 scala 项目问题总结

eclipse+maven+scala+spark项目环境搭建 eclipse+maven+scala+spark项目环境搭建win7自用记录eclipse+maven+scala+spark项目环境搭建java的安装:Maven的安装和设置:对IDE进行修改和安装相应的软件:新建spark项目:hadoop设置运行测试 eclipse+maven+scala+spark项目环境搭建 几个重要的点: eclipse的安装,maven的配置,版本问题,一些问题尝... 阅读详情

使用maven创建scala项目,scala-archetype-simple有bug,会遇到一些问题,这里整理记录一下。

我的环境是:

maven 3.3.9eclipse 4.6java 1.8

通过命令行的形式创建 scala项目:#

mvn archetype:generate -B  \  -DarchetypeGroupId=net.alchim31.maven -DarchetypeArtifactId=scala-archetype-simple -DarchetypeVersion=1.6 \  -DgroupId=com.hainiubl.scala -DartifactId=scala-demo -Dversion=1.0 -Dpackage=com.hainiubl.scala.demo

命令执行完后的目录结构:

  scala-demo tree.├── pom.xml
├── src
│   ├── main
│   │   └── scala
│   │       └── com
│   │           └── hainiubl
│   │               └── scala
│   │                   └── demo
│   │                       └── App.scala
│   └── test
│       └── scala
│           └── samples
│               ├── junit.scala
│               ├── scalatest.scala
│               └── specs.scala
└── target

使用scala 2.11 编译工程会有问题:

  • scala 2.11不支持这个make参数了,从pom.xml中把这个参数去掉

[ERROR] scalac error: bad option: '-make:transitive'
  • 生成的pom.xml缺少一个依赖

[ERROR] /Users/sandy/workspace/scala-demo/src/test/scala/samples/specs.scala:18: error: not found: type JUnitRunner[ERROR] @RunWith(classOf[JUnitRunner])[ERROR]                  ^[ERROR] one error found

在pom.xml中增加

    <dependency>
        <groupId>org.specs2</groupId>
        <artifactId>specs2-junit_${scala.compat.version}</artifactId>
        <version>2.4.16</version>
        <scope>test</scope>
    </dependency>
  • java 和 scala的版本可以修改成你想要的版本
    我这里改成了1.8

修改后完整的pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.hainiubl.scala</groupId>
  <artifactId>scala-demo</artifactId>
  <version>1.0</version>
  <name>${project.artifactId}</name>
  <description>My wonderfull scala app</description>
  <inceptionYear>2015</inceptionYear>
  <licenses>
    <license>
      <name>My License</name>
      <url>http://....</url>
      <distribution>repo</distribution>
    </license>
  </licenses>

  <properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
    <encoding>UTF-8</encoding>
    <scala.version>2.11.8</scala.version>
    <scala.compat.version>2.11</scala.compat.version>
  </properties>

  <dependencies>
    <dependency>
      <groupId>org.scala-lang</groupId>
      <artifactId>scala-library</artifactId>
      <version>${scala.version}</version>
    </dependency>

    <!-- Test -->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.12</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.specs2</groupId>
      <artifactId>specs2-core_${scala.compat.version}</artifactId>
      <version>2.4.16</version>
      <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.specs2</groupId>
        <artifactId>specs2-junit_${scala.compat.version}</artifactId>
        <version>2.4.16</version>
        <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.scalatest</groupId>
      <artifactId>scalatest_${scala.compat.version}</artifactId>
      <version>2.2.4</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <build>
    <sourceDirectory>src/main/scala</sourceDirectory>
    <testSourceDirectory>src/test/scala</testSourceDirectory>
    <plugins>
      <plugin>
        <!-- see http://davidb.github.com/scala-maven-plugin -->
        <groupId>net.alchim31.maven</groupId>
        <artifactId>scala-maven-plugin</artifactId>
        <version>3.2.0</version>
        <executions>
          <execution>
            <goals>
              <goal>compile</goal>
              <goal>testCompile</goal>
            </goals>
            <configuration>
              <args>
                <arg>-dependencyfile</arg>
                <arg>${project.build.directory}/.scala_dependencies</arg>
              </args>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.18.1</version>
        <configuration>
          <useFile>false</useFile>
          <disableXmlReport>true</disableXmlReport>
          <!-- If you have classpath issue like NoDefClassError,... -->
          <!-- useManifestOnlyJar>false</useManifestOnlyJar -->
          <includes>
            <include>**/*Test.*</include>
            <include>**/*Suite.*</include>
          </includes>
        </configuration>
      </plugin>
    </plugins>
  </build></project>

打包编译一下:

mvn package

通过eclipse创建 scala项目:#

默认没有scala的archetype,创建maven项目时自己指定一下:

archetype GroupId:net.alchim31.maven
archetype ArtifactId:scala-archetype-simple
archetypeVersion:1.6

1.5或1.6都可以,创建好项目后自己可以修改相应版本
scala-archetype-simple源码
file

其它修改可以参考上面的 pom.xml,道理是一样的。

pom.xml 还有可能会报错:

Multiple annotations found at this line:
    - Plugin execution not covered by lifecycle configuration: net.alchim31.maven:scala-maven-plugin:3.2.0:testCompile (execution: 
     default, phase: test-compile)
    - Plugin execution not covered by lifecycle configuration: net.alchim31.maven:scala-maven-plugin:3.2.0:compile (execution: 
     default, phase: compile)

解决办法
eclipse 菜单 Window->Preference->Maven->Errors/Warnings->Plugin execution not covered by lifecycle configuration 改成 ignore

转载:水牛 http://hainiubl.com/topics/39

Eclispe中scala maven-scala插件的安装 maven-scala插件的安装scala IDE eclipse的插件在https://blog.csdn.net/liyifan687/article/details/80115771中已安装过。这里需要安装一个 m2e-scala1.安装m2e-scala网址http://alchim31.free.fr/m2e-scala/update-site/ ?问题    第一次安装以上三个只安装了... 阅读详情

相关推荐

解密HDMI热插拔检测电路:从HPD引脚到EDID读取的全流程避坑

本文深入解析HDMI热插拔检测与EDID读取的全流程,从HPD引脚信号特性、DDC通道I2C协议到EDID数据结构,系统剖析了硬件电路设计、信号完整性和软件协议中的常见陷阱与解决方案,为消费电子设备开发者提供了一套完整的实战避坑指南。

weixin_29291069的博客 646

idea2021.3.3 创建maven-scala项目并解决遇到的问题

idea2021.3.3 创建maven-scala项目并解决遇到的问题

水w的博客 4666

AI大模型学习(14)AI 小白入门!用 OpenCV+Python 打造人体姿态识别系统,超详细教程来了

这篇教程介绍了如何使用Python+OpenCV+MediaPipe搭建入门级人体姿态识别系统。主要内容包括:人体姿态识别的应用场景(如健身APP、体感游戏)、开发环境搭建(安装Python、OpenCV和MediaPipe库)、核心代码实现(通过30行代码完成摄像头姿态检测),以及进阶功能开发(深蹲动作纠正算法和PPT体感控制器)。教程详细解析了MediaPipe的BlazePose模型架构和33个关键点的生理学意义,并提供了多线程优化等性能提升方案。该项目适合AI初学者实践,无需复杂算法即可实现实时人体

isoft888的专栏,致力于C#/python分享物联网、大数据,神经网络的等领域,欢迎讨论交流! 1551

Scala-archetype-simple Version:1.6

有两种方法:一是从http://alchim31.free.fr/m2e-scala/update-site/下载,二是通过Eclipse配置安装。下面只介绍第二种方法。 第一步:添加远程的原型或模板目录:http://repo1.maven.org/maven2/archetype-catalog.xml 第二步:新建Archetype,因为maven默认没有Grou

mtj66的博客,交流WX:SpringBreeze1104 2313

2018南京大学计算机夏令营机试

1. Count number of binary strings without consecutive 1’s Given a positive integer n(3≤n≤90), count all possible distinct binary strings of length n such that there are no consecutive 1's . Examples...

climber16的博客 1万+

【ORB_SLAM系列4】—— 一文搞定如何在Ubuntu20.04中安装运行ORB_SLAM3(包含ROS版本和非ROS版本)

ORB-SLAM3是一款基于特征点的实时单目SLAM系统,是SLAM领域的研究热点之一。它的核心算法是结合了ORB特征点提取和描述子匹配、单目RGB相机的深度估计、运动估计和地图优化等步骤,能够在实时性和精度之间取得平衡,适用于各种环境下的定位和建图任务。在各种应用领域都有广泛的应用。本教程主要是介绍了关于在ubuntu20.04中运行ORB_SLAM3的所有依赖的库的安装过程,和所遇到的一些报错的解决方法。有什么问题,可以评论区里面交流讨论

2401_82458959的博客 5039

《摸摸头之scala》1. idea 创建一个maven-scala项目

scala 快速入门

Smileyan's blog 2万+

【23】C++实战篇——C++报错:LNK2001:无法解析的外部符号 ,LNK2019: 无法解析的外部符号,原因分析及解决方法

该文分析了VS项目中出现的"无法解析的外部符号"LNK2001/LNK2019错误。问题表现为跨项目共享变量时,Projector项目无法解析Line项目中声明的外部变量ImgSavePath和ImgFormat。原因在于头文件声明了变量但未包含实现的源文件。解决方法是将getLine.cpp文件添加到Projector项目中。文章还总结了两种错误代码的区别:LNK2001通常对应变量缺失,LNK2019对应函数缺失。最后列出了具体的报错信息,包括无法解析的变量和函数符号。

程序员,他们想的是什么?他们想的永远都是技术,他们崇尚的也永远都是技术。 2006

探索Scala世界的新起点:scala-archetype-simple开源项目

探索Scala世界的新起点:scala-archetype-simple开源项目 在Scala的浩瀚海洋中,找到一个适合快速启动新项目的架构模板显得尤为重要。今天,我们来一同探索scala-archetype-simple——一款为Scala开发者精心设计的项目原型工具。这不仅是一个起点,更是高效开发的加速器。 项目介绍 scala-archetype-simple 是由David B打造并维护的...

gitblog_00294的博客 502

巧妙解决网页弹窗重复出现问题

本文探讨了网页弹窗关闭后刷新重现的问题及解决方案。通过分析原生JavaScript实现的弹窗代码存在的缺陷,提出了使用jQuery改进的方法。关键点包括:利用event.preventDefault()阻止默认行为避免刷新,采用jQuery的hide("slow")方法实现优雅的关闭动画,确保关闭状态持久化。改进后的方案既解决了弹窗重复出现的问题,又提升了用户体验,为网页弹窗交互提供了更优的实现方式。文中提供了完整的HTML、CSS和JavaScript代码示例,便于开发者直接应用。

2501_90323865的博客 180

【ArcGIS Engine二次开发】入门基础(2):ArcGIS开发方式(VBA、DLL、Add-in、Engine)对比

文章目录2.1 使用VBA进行桌面软件开发2.1.1 VBA开发方式2.1.1 VBA代码的安全性2.2 使用DLL进行桌面软件开发2.2.1 DLL开发方式2.2.2 DLL功能的应用部署2.3 使用Add-in进行桌面软件开发2.4 使用ArcGIS Engine构建独立应用程序 对于桌面GIS应用来说,ArcGIS平台不仅提供了用于开发独立运行的GIS应用软件的二次开发工包ArcGIS Engine,还提供了对ArcGIS Deskop桌面软件进行扩展的开发的话,在开发个具体的GIS 行业应用软件时

智慧空间实验室 6509

idea创建使用maven创建Scala项目时遇到的问题

问题描述:idea创建使用maven创建Scala项目时没有src文件 解决方法是: 在创建maven项目时添加系统参数 铺垫: idea已经配置maven,如下图所示 1----maven的安装路径 2----maven的安装路下的设置文件 3----这是默认在2所指文件中指定的maven的本地仓库地址 2中设置maven本地仓库地址如下图 具体操作如图所示: 1.选择使用maven工具 ...

pageniao的博客 1070

PreScan快速入门到精通第二十一讲驾驶员模型之驾驶员在环

请注意,操纵杆的输出角度是以度为单位的,而方向盘执行器希望其输入是以弧度为单位的。当选择一个支持的方向盘时,PreScan会自动将按钮映射到正确的功能上(如换挡),并设置轴的正确范围(如转向角度)。该系统中的所有其他组件都是为了提供正确的按钮映射,并为所选的方向盘设置正确的范围。对于每一个额外连接的控制器,它们的ID会增加一个,例如第二个控制器的设备ID为1,第三个控制器的设备ID为2,等等。由于所有的方向盘最初放在编译表上的设备ID都是0,所以用户应该先进行正确的调整,将每个控制器设置为正确的设备ID。.

小明师兄的博客 1423

Scala-IDE创建scala的maven项目

文章目录 环境 (1)安装好scala(会自动配置好环境变量)、scala-IDE、maven插件 (2)新建scala的maven项目 (3)根据已有的scala原型(archetype)进行创建scala项目 没有scala原型样例工程的解决方案 (4)等待scala的maven原型项目进行初始化 环境 java1.7 scala2.11.7 maven插件 下载地址: ...

yangbosos的博客 1068

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

创建scala项目及处理Maven无法创建Scala文件的问题

创建scala项目步骤 第一步: File------->New-------->Project-------->Maven------------->勾选Create from archetype 并选中scala-archetype-simple 新建 第二步: Scala项目如果不能无法创建scala类或者object 则需要以下处理: File--------->Project Structure-------->Libraries-------->点击**

weixin_45441740的博客 475

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

eclipse构建maven scala 项目 编译成功

eclipse构建maven+scala+spark工程 eclipse构建maven scala 项目 编译成功

小草君技术专栏 1万+

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

在IDEA中安装scala、maven、hadoop遇到的问题

小白在通过IDEA使用scala、maven、hadoop遇到的问题 问题一:idea new 新文件没有scala;File->setting->Plugins,然后搜索scala插件安装。安装完成后重启idea。然后设置Scala sdk: File->Project Structure->Libraries->+ 问题二:Maven的的导入时mvn不是内部或外部命令…;这是环境变量没有配置好,下图附环境变量: 在D:\maven\apache-maven-3.6.1\c

qq_43513485的博客 348

scala —— maven scala项目开发

环境准备IntelliJ IDE + maven + scala 创建java和scala混合开发的项目,IDE用intellij,项目管理工具使用maven 1.intellij安装scala插件 File -》 Settings -》 Plugins中搜索scala,安装插件 安装完成后的页面如下: 创建项目新建一个maven项目 创建的空项目如下图所示: 和java同目录

星辰大海,脚踏实地 1772

Scala IDEA for Eclipse里用maven来创建scala和java项目代码环境(图文详解)

  这篇博客   是在Scala IDEA for Eclipse里手动创建scala代码编写环境。 Scala IDE for Eclipse的下载、安装和WordCount的初步使用(本地模式和集群模式)   本博文,教大家,用maven来创建。   第一步:安装scala插件   因为,我win7下的scala环境是2.10.4 ...

weixin_30438813的博客 168

在vscode里面使用java+scala项目

我有毒,用了一周idea,实在是太难用了,总是不知道报什么错(请注意最好是使用官方正版的),主要是需要花时间研究,所以我还是先用回来vscode了, 需要注意的几个点。 按照网上的教程生成一个快速的maven项目,安装了依赖后,Ctrl+shift+P可以调出命令 生成maven项目没有iml,使用命令生成iml文件 mvn idea:module 新建一个文件scala mvn idea:module mvn idea:mmvn imvn idea:modumledea:moduleodu.

ab31ab的博客 3383

配置maven和Scala环境,并且运行第一个spark项目

配置maven和Scala环境,并且运行第一个spark项目1、安装maven和scala下载安装maven安装Scala2、IDEA配置maven和Scalamaven:Scala:3、创建maven的spark工程创建一个简单的wordcount吧 1、安装maven和scala 下载 maven下载地址 Scala2.12下载地址 安装maven 下载解压到D:\maven目录下 环境变量MAVEN_HOME,赋值D:\maven 环境变量Path,追加%MAVEN_HOME%\bin; cmd输入

weixin_44429965的博客 1022

Scala项目创建问题汇总

问题1: Some problems were encountered while building the effective model for org.lee:scala-train:jar:1.0 'build.plugins.plugin.version' for org.scala-tools:maven-scala-plugin is missing. @ line 51, colu...

混沌人的博客 424

eclipse建maven scala项目

之前eclipse已经安装好scala插件了,现在需要建一个maven scala项目 new——>maven——>选择scala-archetype-simple 如果没有scala-archetype-simple,则需要在下方的Add Archetype中加 Group id : org.scala-tools.archetypes Artifact id : scala-arc

Rome was not built in one day 554

scala使用maven创建spark项目编译报错

IEDA使用Maven创建Spark项目,编译报错如下: Error:scalac: Error: org.jetbrains.jps.incremental.scala.remote.ServerException Error compiling sbt component 'compiler-interface-2.7.0-final-52.0' at sbt.compiler.Analyz...

xinguopeng的博客 742

Spark项目的创建

创建spark文件入门,成功运行word count程序!!!

weixin_51229784的博客 3058
上一篇: 利用IntelliJ IDEA与Maven开始你的Scala之旅
下一篇: Linux Top Command Output Explained
DViewer
博客等级 码龄16年 16粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值