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>


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>

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

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

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

deviltD
_devilt 哈?
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Maven下Scala和Java混合打包
楔子 Maven下Scala和Java混合打包 ,相关配置文件当独提取出来,依赖的jar包也使用meavn拷贝到一个lib目录下 效果 打包命令 mvn clean scala:compile compile package -- 下面这个 比上面多 dependency:copy-dependencies -DoutputDirectory=target/lib 表示吧依赖的jar 打包...
maven建立java和scala混合的项目
项目需求:我们采用spark开发项目,使用的开发语言采用java和scala的混合,这个时候我们的项目需要支持java和scala,一般方法两种 (1)通过IDEA开发工具,下载SBT安装包,通过SBT创建项目,自动支持java和scala比较方便,但包的下载很慢 (2)项目我们使用IDEA开发工具,通过maven来完成java和scala混合项目 下面我们专门介绍如何通过maven来支
scala和java混合编译
博客配套文件,详细演示了在maven中如何混合编译java和scala共存的代码。
scala 和Java混合编译
scala和Java混合编译的时候会出现问题,如果Java中引用scala的包,那么会在编译的时候报错找不到相关类。 原因这种问题是因为没有先编译scala,在编译Java的时候找不到scala的类。解决办法1、使用命令maven scala:compile compile2、使用scala-maven插件<plugins> <plugin>
Maven项目 混合编译Java和Scala
建立maven-scala项目后,会生成相应的pom文件。把maven-surefire-plugin的插件注释掉或者直接删掉。然后加入maven-shade-plugin的插件配置。 接下来正常边写程序运行项目时,由于java和scala代码相互调用,所以maven install的时候报错了。 scala:216: error: not found: value java class 然后
使用IDEA进行scala/java混合工程的构建
构建scala/java混合工程,大致有2种方式: 方式一、 File ----》New Project ----》勾选Maven ----》 再勾选Create from archetype ----》选择 "org.scala-tools.archetypes:scala-archetype-simple" 这种方式构建混合工程较为简单,但是由于插件更新不及时,安装时的scala
eclipse构建maven scala 项目 编译成功
eclipse构建maven+scala+spark工程 eclipse构建maven scala 项目 编译成功
Maven 构建 Java 项目
Maven 使用原型 archetype 插件创建项目。要创建一个简单的 Java 应用,我们将使用 maven-archetype-quickstart 插件。 在下面的例子中,我们将在 C:\MVN 文件夹下创建一个基于 maven 的 java 应用项目。 命令格式如下: mvn archetype:generate -DgroupId=com.companyname.bank -D...
maven 构建的java web项目
第一步:创建maven项目 选择maven project.,点击next. 继续点击next 选择maven-archetype-webapp,点击next. 点击finish.生成如下目录结构 接着在SpringDemo上鼠标右键Bulid Path 在jre上,点击edit 选择自己的jdk.点击确定,此时项目目录
maven 打包Scala代码到jar包
mvn clean package默认只处理java源代码的编译,打包,如果此时Scala代码还没有编译生成class,则不会被打入jar包 使用插件,打包前先执行scala:compile,先编译scala<groupId>org.scala-tools</groupId> <artifactId>maven-scala-plugin</artifactId>
scala —— maven scala项目开发
环境准备IntelliJ IDE + maven + scala 创建java和scala混合开发的项目,IDE用intellij,项目管理工具使用maven 1.intellij安装scala插件 File -》 Settings -》 Plugins中搜索scala,安装插件 安装完成后的页面如下: 创建项目新建一个maven项目 创建的空项目如下图所示: 和java同目录
在Maven中混用Java和Scala
主要就是在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/XMLSch...
maven java maven Eclipse 环境构建
介绍maven 安装,maven Eclipse环境集成。maven是apache出的能够方便工程构建的可代替ant的软件。
Flink 框架下scala与java混合编程问题
最近在应用Flink做相关业务设计,使用scala与java的混合编程,遇到一些问题,在这里做个记录. 问题1: Error:(85, 23) value foreach is not a member of java.util.ArrayList[com.icsoc.report.model.Message[_]] for (msg &amp;lt;- messages) { 这...
IDEA 创建Scala和Java的混合项目
第一步:
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...
java scala 混合编译报错,找不到包。
原创部分:       java和scala混合编译报错百度没搜到,google了一下网上成功解决分方案分两种,其中一种是先对scala编译,这种是对应的java引用scala包的情况,第二种是混合编译,这种是对应的java引用scala包,并且scala包也有引用java包的情况,所以如果你的程序报的是有的包没找到,但是明明程序里面有那个包,最好用这个混合编译的方法。转载部分:我有一个混合的Sc...
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;...
Maven的构建
1、编译项目  切换到pom.xml所在目录,是由archetype:generate创建并执行以下命令来编译您的应用程序源:mvn compile  在执行这个命令时,您应该看到如下输出:[INFO] ---------------------------------------------------------------------------- [INFO] Building 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编译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
构建Scala的Maven项目
spark的scala项目Maven构建和使用 一、使用 spark-sql使用 spark-sql --master yarn --num-executors 30 --executor-memory 12g 二、建立项目 1.建立Maven项目:吧java文件夹 重命名为scala文件夹 2.修改xxx.xml配置 3.删除./idea下文件 sca
IDEA maven混合打包
由于公司需求,需要开发一个服务器前置机调用接口,并将接口放给其他公司的人。 为了代码的保密性,最简单的就是:混淆打包 混淆打包所需jar包下载:https://download.csdn.net/download/weixin_41693903/11352203 1.lib中加两个jar包 2.点击maven-&gt;Lifecycle-&gt;clean 3.点击-&gt;pac...
Eclipse构建scala maven项目
基于Hadoop CDH5和Spark新版本2.3.2详细讲述了大数据各种技术,包括HDFS、YARN、MapReduce、Hive、HBase、Flume、Kafka、Hue、Spark Streaming,Spark SQL、Spark Structured Streaming。主要内容包括MapReduce项目离线处理、Hive与HBase大数据分析与挖掘、Hue大数据项目可视化、Spark SQL大数据项目离线分析、Spark Streaming 大数据项目实时分析,Spark Structured Streaming大数据项目实时分析,Web项目可视化。rn
idea构建scala的maven项目
1.下载scala的插件 快捷键:Ctrl+Alt+s 安装完成后,提醒需要重新IDEA 2.创建maven工程 3.安装scala的sdk 4.创建scala的package
Eclipse构建Scala maven项目
本课程为项目实战课,项目各个环节既深入讲解理论知识,又结合项目业务进行实操,从而达到一站式掌握大数据离线项目。
maven如何编译打包groovy和java的混合项目?
用的是gmavenplus,但是总是提示找不到要编译的groovy文件。rn目录指向应该是没问题的。rn执行结果提示如下:rn[INFO] ------------------------------------------------------------------------rn[INFO] rn[INFO] --- gmavenplus-plugin:1.5:generateStubs (default-cli) @ tcp ---rn[INFO] No sources specified for stub generation. Skipping.rn[INFO] ------------------------------------------------------------------------rn[INFO] BUILD SUCCESSrn[INFO] ------------------------------------------------------------------------rnrn以下是pom片段,哪位看看,问题出在哪?rnrn rn org.codehaus.gmavenplusrn gmavenplus-pluginrn 1.5rn rn rn org.codehaus.groovyrn groovy-antrn 2.4.12rn rn rn org.codehaus.groovyrn groovy-allrn 2.4.12rn rn rn rn rn rn generateStubsrn compilern rn rn truern truern rn rn $basedir/src/main/javarn rn **/*.groovyrn rn rn rn rn rn rn rnrn
maven系列:构建maven工程
今天我们来通过一个项目小实战(spring+mybatis),让大家对maven有更加深刻的认知 一)建立maven工程 ①右击new-》other-》maven-》Maven Project,然后next、next,填写项目需要的相关信息,点击finish ②修改项目jdk,项目上右击选择properties,进入一窗口 --点击Java Build Path,修改JRE Sy...
eclipse的maven、Scala环境搭建
最近重新搭建了一下maven+Scala的环境,发现很多东西都不记得了,于是重新记录一遍。 嫌搭建麻烦的话也可以直接下载Scala官方做好的环境http://scala-ide.org/download/sdk.html   里面包含了很多常用的插件,但是并没有用到maven而是sbt,但是在国内由于一些原因sbt速度非常慢,没有翻墙的话还是用maven好了。如果用这个IDE的话,可以直接从3开
安装scala与Idea构建scala项目
Ubuntu14安装scala与Idea构建scala项目 1. 安装scala 可以登陆官网http://www.scala-lang.org/download/去下载压缩文件,然后解压去安装,但是需要如果没有vpn就比较尴尬了,会打不开无法下载,所以推荐下面方式去安装scala 命令构建:sudo apt-get install scala但是安装的可能不是最新版本的scala,比如...
spark本地开发环境搭建(maven + scala + java)
开发工具和软件版本信息 IDEA 2019.2 JAVA 1.8 Scala 2.11.12 Spark 2.4.3 Hadoop 2.7.7 Windows ...
【软件工程】Maven: 创建Java/Scala混编项目
2018.11.02 文章目录前言方法 前言 项目需求改变,需要开发Spark应用,而原项目是基于Java开发的,所以就需要原项目能支持Java/Scala混编。原项目采用的是Maven项目管理工具,编辑器是IDEA。 方法 本方法基于已存在的Maven项目,未创建Maven项目的可使用mvn archetype:generate创建一个新项目: 在pom.xml中添加scala-maven...
scala eclipse maven环境搭建
NULL 博文链接:https://blackproof.iteye.com/blog/2242759
scala库 by maven依赖
scala库 by maven依赖
idea maven scala 编译
用maven命令:rnmvn clean scala:sompile compile packagern可以编译成功并且打包rnrn但是点击maven prjects -> compile 或是package 就会出现如图所示错误:rn[img=https://img-bbs.csdn.net/upload/201612/14/1481706613_478061.png][/img]rnrnrn[img=https://img-bbs.csdn.net/upload/201612/14/1481706625_492752.png][/img]
基于maven的scala与java相互调用的简单实例
该demo是基于maven的scala(版本2.11.8)与java相互调用可以运行的最基本的例子。该demo可以导出可运行的jar文件。希望能对大家有帮助。
idea快捷键使用及代码构建maven git
⌥ Option ⌃ Control   自动生成try catch语句:command+alt+t 编辑框最大话:shift+fn+command+f12 console最大化:shift+cmd+上键/下键 command+shift+上下箭头 把代码上移或着下移 command+D复制一行 alt+f8 debug时选中查看值 f8相当于eclipse...
ScalaIDE(第五部分)
ScalaIDE(第五部分)最后一部分内容
Scala之——Scala与Java的互操作
转载请注明出处:https://blog.csdn.net/l1028386804/article/details/83654966 引入scala.collection.JavaConversions里的隐式转换方法。可以在代码中使用Scala缓冲,在调用Java方法时,这些对象会被自动封装成Java列表。 举例来说,java.lang.ProcessBuilder类有一个以List&amp;lt;S...
相关热词 c# login 居中 c# 考试软件 c# 自然语言分析 c# 分段读取文件 c# 泛型反射 c#打断点 c# 时间转多少秒 c# 线程函数加参数 c# modbus 读取 c#查询集合表