maven在scalaIDE下构建scala和java混合代码

通过scalaIDE新建一个scala项目,然后convert to maven project。单独clean install scala的类是没有问题的,
但是新建java类之后再在内部引用scala类就会出现找不到符号这样的报错,所以请教各位有没有什么可以解决的方法。
以下是pom.xml的build配置:

<build>
        <sourceDirectory>src</sourceDirectory>
        <plugins>
        <plugin>
                <groupId>org.scala-tools</groupId>
                <artifactId>maven-scala-plugin</artifactId>
                <version>2.15.2</version>
                <executions>
                    <execution>
                        <id>scala-compile-first</id>
                        <goals>
                            <goal>compile</goal>
                            <goal>add-source</goal>
                        </goals>
                        <!-- <configuration>
                            <includes>
                                <include>**/*.scala</include>
                            </includes>
                        </configuration> -->
                    </execution>
                    <execution>
                        <id>scala-test-compile</id>
                        <goals>
                            <goal>testCompile</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <scalaVersion>2.10.5</scalaVersion>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.3</version>
                <configuration>
                    <source>1.7</source>
                    <target>1.7</target>
                </configuration>
            </plugin>

        </plugins>
    </build>


1

3个回答

我最后解决了这个问题,原因是因为,我的工程里有java调用scala的代码,因此需要在编译时,设置先编译scala代码后编译java代码。方法有两个:
1,在使用mvn命令时,

mvn scala:compile compile

这样使用。
2,编辑pom.xml文件设置编译的先后顺序,这部分我研究的不深,就只放上一个成功的解决方案。

 <plugin>
        <groupId>org.scala-tools</groupId>
        <artifactId>maven-scala-plugin</artifactId>
        <version>2.15.1</version>
        <executions>
          <execution>
            <id>scala-compile</id>
            <phase>process-resources</phase>
            <goals>
              <goal>compile</goal>
            </goals>
          </execution>
          <execution>
            <id>scala-test-compile</id>
            <phase>process-test-resources</phase>
            <goals>
              <goal>testCompile</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.5.1</version>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
          <encoding>UTF-8</encoding>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
          <encoding>UTF-8</encoding>
        </configuration>
        <executions>
          <execution>
            <goals>
              <goal>test-jar</goal>
            </goals>
          </execution>
        </executions>
      </plugin>

0
deviltD
_devilt 看了你的方案,和我的基本差不多,多谢啊!不过这种混合的方式后面还有好多问题,是个大坑。
接近 2 年之前 回复

您好,不知道你解决这个问题了吗?我现在也遇到了同样的问题!

0

丁涛??????????????????????

0
deviltD
_devilt 哈?
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
maven建立java和scala混合的项目
项目需求:我们采用spark开发项目,使用的开发语言采用java和scala的混合,这个时候我们的项目需要支持java和scala,一般方法两种 (1)通过IDEA开发工具,下载SBT安装包,通过SBT创建项目,自动支持java和scala比较方便,但包的下载很慢 (2)项目我们使用IDEA开发工具,通过maven来完成java和scala混合项目 下面我们专门介绍如何通过maven来支
让maven正常编译scala、java代码混合的工程
编辑pomxml 编译 制作war包编辑pom.xml假设代码所在目录为: src/main/java src/main/scala src/test/java src/test/scala加入如下编译指令 <packaging>war</packaging> <properties> <maven.compiler.source>1.8</maven.comp
使用maven进行scala项目的构建
目标: 1、命令行用maven进行scala项目构建 2、产生eclipse项目文件 pom.xml文件 &amp;lt;project xmlns=&quot;http://maven.apache.org/POM/4.0.0&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:schemaLocation=&quot;http://maven.apac...
Maven项目 混合编译Java和Scala
建立maven-scala项目后,会生成相应的pom文件。把maven-surefire-plugin的插件注释掉或者直接删掉。然后加入maven-shade-plugin的插件配置。 接下来正常边写程序运行项目时,由于java和scala代码相互调用,所以maven install的时候报错了。 scala:216: error: not found: value java class 然后
maven环境下使用java、scala混合开发spark应用
熟悉java的开发者在开发spark应用时,常常会遇到spark对java的接口文档不完善或者不提供对应的java接口的问题。这个时候,如果在java项目中能直接使用scala来开发spark应用,同时使用java来处理项目中的其它需求,将在一定程度上降低开发spark项目的难度。下面就来探索一下java、scala、spark、maven这一套开发环境要怎样来搭建。1、下载scala sdkht
scala与java混合编译出现的问题
    工程项目中同时包含scala和java代码,如果在java中调用scala的类,编译时可能会报找不到scala类的错误,出现这种问题的解决办法是需要对scala进行先行编译,具体需要在pom文件中添加一下plugin: &amp;lt;plugin&amp;gt; &amp;lt;groupId&amp;gt;org.apache.maven.plugins&amp;lt;/groupId&amp;gt; &amp;lt;artif...
Maven下Scala和Java混合打包
楔子 Maven下Scala和Java混合打包 ,相关配置文件当独提取出来,依赖的jar包也使用meavn拷贝到一个lib目录下 效果 打包命令 mvn clean scala:compile compile package -- 下面这个 比上面多 dependency:copy-dependencies -DoutputDirectory=target/lib 表示吧依赖的jar 打包...
idea maven打包java、scala混合项目 & maven打包指定主类
1.maven打包java、scala混合项目 在使用 maven-shade-plugin 插件打包java、scala混合项目的过程中,发现执行mvn package命令打包的jar包中没有scala类, 经发现maven的默认compile不会编译scala类。 1.1 经搜索可以添加下面两个插件: &amp;lt;plugin&amp;gt; &amp;lt;!-- 这是个编译java代码的 --&amp;...
IDEA 创建Scala和Java的混合项目
第一步:
eclipse环境安装scalaIDE环境
eclipse版本,Mars 4.5.2,这个版本只能安装2.11版本的scala,2.12要在4.6以上才行。安装方法最省心是用Help中的Add new software,直接把网址复制上去,然后升级,就OK了。...
Scala:Object-Oriented Meets Functional
Have the best of both worlds. Construct elegant class hierarchies for maximum code reuse and extensibility, implement their behavior using higher-order functions. Or anything in-between. OO确实是最大化了代码的...
Scala基础入门(三)使用Scala IDE编写第一个Scala程序
Scala 开发环境Scala 是 类Java 语言, 可以在命令行运行代码;C:\Users\Administrator>scala -version Scala code runner version 2.12.3 -- Copyright 2002-2017, LAMP/EPFL and Lightbend , Inc.C:\Users\Administrator>scala Welcome
idea创建scala maven项目总结
步骤一:安装scala插件注意一般我们在idea上下载插件很容易因为网络原因下载不成功!所以去idea插件网址下载,但要知道自己idea scala的版本http://plugins.jetbrains.com/plugin/?idea&amp;amp;id=1347 测试:idea 重启, new project 显示scala选项代表安装成功!!步骤二:下载scala-sdk (注意这个scala-s...
scala和java混合编译
博客配套文件,详细演示了在maven中如何混合编译java和scala共存的代码。
SCALA+JAVA项目 几种混合编译方法
JAVA开发 ,学一下Scala 语言很快的, 一些JAVA项目部分转SCALA,尝试了几种编译方法,遇到一些问题,不能解决,记录一下。   个人习惯用的是Eclipse , 开发Scala 可以装个Scala-IDE插件, 最新版可以直接在Eclipse Marketplace里 Install  如果选择其他版本scala , 可以在http://scala-ide.org/dow...
Maven构建java和scala混编项目
Mixed Java/Scala Projects The scala-maven-plugin is used for compiling/testing/running/documenting scala code in maven.  分别设置好source folder :src/main/java,src/test/java,src/main/scala,src/test/scala
scala与java混合编程打包pom.xml
pom的build部分: &amp;lt;build&amp;gt; &amp;lt;pluginManagement&amp;gt; &amp;lt;plugins&amp;gt; &amp;lt;plugin&amp;gt; &amp;lt;groupId&amp;gt;net.alchim31.maven&amp;lt;/groupId&amp;gt; &amp;lt;artifactId&amp;gt;scala-
Scala环境配置以及IDE安装
1 Scala环境配置Scala环境配置大致两步: 1. Scala sdk下载并解压 2. Scala环境变量设置1.1 Scala sdk下载并解压Scala下载地址:http://www.scala-lang.org/download/。将其解压到适合的文件夹。MAC系统建议解压到/Library下,并建立一个Scala文件夹。譬如我的Scala的完整目录为:/Library/Scala/
使用IDEA进行scala/java混合工程的构建
构建scala/java混合工程,大致有2种方式: 方式一、 File ----》New Project ----》勾选Maven ----》 再勾选Create from archetype ----》选择 "org.scala-tools.archetypes:scala-archetype-simple" 这种方式构建混合工程较为简单,但是由于插件更新不及时,安装时的scala
linux下安装scala, scala IDE过程总结
hadoop与spark这两个大数据工具都是针对linux开发的. 如果想要进行大数据开发,使用这两个工具. 就不得不在使用linux系统, 学会在linux下安装各种软件和开发语言. 我的linux系统是ubuntu14. linux系统下安装scala,步骤和windows下安装步骤类似. 区别是下载的安装包,要用linux命令进行解压,移动,安装,改写配置文件等.
java代码中引用了scala类,Maven打包编译时爆出找不到scala类的异常
原因:项目打包时,会先编译java代码,再编译scala代码。编译顺序有问题导致打包时找不到相应的scala类 解决:添加一个Maven build的插件 &lt;plugin&gt; &lt;groupId&gt;net.alchim31.maven&lt;/groupId&gt; ...
Scala Java 混合开发的项目如何通过 Maven 进行打包(配置文件也都添加进去)
项目目录结构: pom.xml 中的打包代码: &amp;lt;build&amp;gt; &amp;lt;resources&amp;gt; &amp;lt;resource&amp;gt; &amp;lt;directory&amp;gt;src/main/resource&amp;lt;/directory&amp;gt; &amp;lt;include...
scala常见问题总结(IDE:idea)
问题一:scala程序报错Error:scalac: IO error while decoding E:\Eclipse\Idea\Spark\src\main\scala\WordCount\AdvUrlCount.scala with UTF-8 Please try specifying another one using the -encoding option 解决方案:在idea
scala 和Java混合编译
scala和Java混合编译的时候会出现问题,如果Java中引用scala的包,那么会在编译的时候报错找不到相关类。 原因这种问题是因为没有先编译scala,在编译Java的时候找不到scala的类。解决办法1、使用命令maven scala:compile compile2、使用scala-maven插件<plugins> <plugin>
Scala IDE设置缩进格式
scala IDE缩进修改
爬坑:spark项目打包报错(java和scala混编)
项目打包:mvn clean package -DskipTests java和scala混编打包 报错: /Users/rocky/source/work/sparktrain/src/main/scala/com/zoujc/spark/project/dao/CourseSearchClickCountDao.scala 把pom.xml文件中&amp;lt;build&amp;gt;下指定sourceD...
如何将已经建好的项目导入到Scala IDE forEclipse中
如何将已经建好的项目导入到Scala IDE forEclipse中
Scala与MapReduce开发的IDE插件
Scala与MapReduce的开发需要有一个IDE支持才更方便,本文介绍两个Eclipse插件,方便在Eclipse上开发Scala程序和MapReduce程序。一、 系统环境CentOS 6.5 JDK 1.8 Hadoop 2.6.0 Spark 1.6.0 Scala 2.10.4二、 Eclipse的安装我们这里选择的版本是eclipse-java-juno-SR2-linux,即
maven针对JAVA-SE项目的打包范例
    &amp;lt;project xmlns=&quot;http://maven.apache.org/POM/4.0.0&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:schemaLocation=&quot;http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/mave...
idea构建scala的maven项目
1.下载scala的插件 快捷键:Ctrl+Alt+s 安装完成后,提醒需要重新IDEA 2.创建maven工程 3.安装scala的sdk 4.创建scala的package
java代码与scala代码一同打包成一个jar包
pom文件设计 由与当前代码库当中的pom文件使用maven打包时并不会将scala代码和java代码一起打包成一个jar包,故对pom文件进行修改。主要添加内容为: scala的库依赖包,以及打包的插件plugin。加入的代码如下所示: 插件pom: &amp;lt;plugin&amp;gt; &amp;lt;groupId&amp;gt;org.scala-tools&amp;lt;/groupId&amp;gt; &amp;lt;art...
IDEA+Maven构建scala项目【一篇就够】
一、新建项目 输入项目名称:SparkDemo_WordCount,点击“完成” 项目创建成功,如下所示: &quot;C:\Program Files\Java\jdk1.8.0_45\bin\java&quot; -Dmaven.multiModuleProjectDirectory=C:\Users\Administrator\AppData\Local\Temp\archetype1t...
maven编译kotlin和java混合项目的代码出错
要想编译混合代码应用程序,必须在 Java 编译器之前调用 Kotlin 编译器。 按照 maven 的方式,这意味着应该使用以下方法在 maven-compiler-plugin 之前运行 kotlin-maven-plugin,确保 pom.xml 文件中的 kotlin 插件位于 maven-compiler-plugin 上面,如下: &amp;lt;plugins&amp;gt; ...
scalaIDE 与spark2.0 源代码关联
scalaIDE maven方式获取spark2.0 源代码   不安装插件,scalaide的maven新建的是java工程,没法使用scala代码。 因此,必须安装scala ide 的maven插件。   步骤: http://scala-ide.org/docs/tutorials/m2eclipse/     1、安装插件 Using Scala IDE for Ec
同时使用java和scala语言的maven项目pom文件示例
主要就是在pom.xml中添加scala的三个依赖包和maven-scala插件,配置如下:&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&amp;gt; &amp;lt;project xmlns=&quot;http://maven.apache.org/POM/4.0.0&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-in...
macbook pro 上如何搭建scala的开发环境
 到scala官网,下载scala的sdk,地址:http://www.scala-lang.org/download/ adeMacBook-Pro:scala-2.11.6 apple$ wget http://downloads.typesafe.com/scala/2.11.6/scala-2.11.6.tgz?_ga=1.266727886.1594027332.143272361...
java scala混合编程
需要在pom里面加入: 依赖包: &amp;lt;dependency&amp;gt; &amp;lt;groupId&amp;gt;org.scala-lang&amp;lt;/groupId&amp;gt; &amp;lt;artifactId&amp;gt;scala-library&amp;lt;/artifactId&amp;gt; &amp;lt;version&amp;gt;2.11.12&amp;lt;/version&amp;gt; &amp;lt;scope&amp
idea基于maven 和scala创建spark项目
一、需要安装的环境 ① JDK。本人安装的是1.8版本,安装过程略,网上可搜索anzhuang教程。 ② MAVEN。本人安装的是3.3.3。 ③ IDEA。版本是2016.3以后的版本。 二、创建基于scala语言的spark项目 ①创建新项目(FILE -> NEW -> PROJECT) ②左边栏选择Maven,点击红圈内容,Next
无法忍受sbt构建scala的龟速,用maven构建spark应用吧
本文主要介绍如何使用maven构建spark应用,同样可以用于其他cmdline的java应用。项目结构/ /conf/ 配置文件 /libs/ 依赖包 /bin/ 启动命令脚本 /logs/ log /data/ 数据 /src/ 源代码 /pom.xml /assembly.xml项目pom.xml<?xml version="1.0" encoding="UTF-
java scala 混合编译报错,找不到包。
原创部分:       java和scala混合编译报错百度没搜到,google了一下网上成功解决分方案分两种,其中一种是先对scala编译,这种是对应的java引用scala包的情况,第二种是混合编译,这种是对应的java引用scala包,并且scala包也有引用java包的情况,所以如果你的程序报的是有的包没找到,但是明明程序里面有那个包,最好用这个混合编译的方法。转载部分:我有一个混合的Sc...