同时使用java和scala语言的maven项目pom文件示例

IDEA 新建Maven项目同时支持Java和Scala两种语言 前言 之前用Eclipse+sbt+Scala,sbt 不支持Java,如果项目里包含Java文件打包会报错,现在有同时用Java和Scala的需求,比如写一个Java的类,用Scala去调用,所以改用Maven,第一次用,将过程记录下来。 首先安装Scala插件 然后新建一个maven project 建好之后,配一下maven 如图: 这个时候是不能使用Scala的,如图 配置 Project Structure File=>Project Structure=>Libraries 阅读详情
主要就是在pom.xml中添加scala的三个依赖包和maven-scala插件,配置如下:

<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.lhever.lang</groupId>
    <artifactId>Java_scala</artifactId>
    <version>1.0-SNAPSHOT</version>


    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <junit.version>4.11</junit.version>
        <scala.version>2.12.5</scala.version>
    </properties>

    <dependencies>
        <!--   单元测试 -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>${junit.version}</version>
            <scope>test</scope>
        </dependency>

        <!-- log4j日志记录 -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.6.6</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.6.6</version>
        </dependency>
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.16</version>
        </dependency>

        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.1.3</version>
        </dependency>

        <dependency>
            <groupId>org.scala-lang</groupId>
            <artifactId>scala-library</artifactId>
            <version>2.12.5</version>
        </dependency>
        <dependency>
            <groupId>org.scala-lang</groupId>
            <artifactId>scala-compiler</artifactId>
            <version>2.12.5</version>
        </dependency>
        <dependency>
            <groupId>org.scala-lang</groupId>
            <artifactId>scala-reflect</artifactId>
            <version>2.12.5</version>
        </dependency>
        <dependency>
            <groupId>org.scala-lang.modules</groupId>
            <artifactId>scala-xml_2.12</artifactId>
            <version>1.1.0</version>
        </dependency>
        <dependency>
            <groupId>org.scala-lang.modules</groupId>
            <artifactId>scala-parser-combinators_2.12</artifactId>
            <version>1.1.0</version>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>net.alchim31.maven</groupId>
                <artifactId>scala-maven-plugin</artifactId>
                <version>3.2.2</version>
                <executions>
                    <execution>
                        <id>compile-scala</id>
                        <phase>compile</phase>
                        <goals>
                            <goal>add-source</goal>
                            <goal>compile</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>test-compile-scala</id>
                        <phase>test-compile</phase>
                        <goals>
                            <goal>add-source</goal>
                            <goal>testCompile</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <scalaVersion>${scala.version}</scalaVersion>
                </configuration>
            </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>
                </configuration>
            </plugin>
        </plugins>
    </build>


</project>



maven项目中引入上述pom文件后,结构如下,这样,就可以在java项目中愉快的撸scala了:



POM模板(针对scala2.11.12).txt POM模板(针对scala2.11.12),(3)配置POM.xml文件,设置、、、 除了基础设置之外,其他可以沿用相同的代码架构 立即下载

相关推荐

一键转换B站M4S缓存为MP4:无需FFMPEG命令的简易工具

本文介绍了一款专为B站用户设计的绿色工具,可将缓存的M4S视频和音频文件一键转换为通用MP4格式。该工具完全图形化操作,无需学习复杂的FFmpeg命令,解决了普通用户处理B站缓存视频的痛点。文章详细讲解了从下载、配置到转换的完整流程,并提供了常见问题排查与安全使用建议,帮助用户高效、安全地管理离线视频内容。

joy55的博客 481

在pom.xml添加scala-library包,使maven工程项目支持scala支持,不用在ide中进行配置添加scala库。

1、在pom.xml添加如下内容: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schem...

sxj的专栏 8885

Frida实战:高效dump Android内存中的so文件与修复技巧

本文详细介绍了使用Frida工具dump Android内存中已解密so文件的实战技巧。针对加固应用静态分析失效的痛点,文章提供了从环境搭建、使用frida_dump脚本自动化抓取内存数据,到利用SoFixer工具修复ELF文件结构的完整流程,帮助逆向分析人员高效获取可分析的so文件。

tt34567的博客 529

scala教程

scala第一天学习 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。 scala常用版本与开发工具 常用版本为2.11.8 开发工具采用IDEA 基于idea的scala项目开发 在pom.xml中 将依赖的版本号进行封装 &amp;amp;amp;lt;scala.version&amp;amp;amp;gt;...

hucuoshi8718的博客 829

保姆级避坑指南:在Ubuntu 18.04上搞定速腾Helios雷达驱动与fast-LIO2的完整配置流程

本文提供了一份详细的速腾Helios雷达与fast-LIO2在Ubuntu 18.04上的配置避坑指南,涵盖驱动安装、数据格式转换到建图全流程。特别针对常见编译错误和数据转换问题提供了解决方案,帮助开发者高效完成环境搭建与建图任务。

weixin_27252001的博客 115

Docker离线部署OpenWebUI操作步骤

docker离线部署openwebui

m0_49333265的博客 4357

IDEA配置Maven-scala方式具体操作

   1、首先需要在IDEA中配置好scala的软件环境; 下载scala---windows版本,双击安装即可。要记好安装目录。 配置scala在IDEA中的语言环境File--Settings--Plugins---Browse repositories,直接搜索scacla,拉到下边找到LANGUAGES选项;如果没有安装过,右边框中会提示安装。直接安装即可。   此刻就可以书写s...

weixin_44037478的博客 2171

用Bus Hound和MIDIOX抓包分析USB MIDI数据流:从硬件接口到软件解析的完整实战

本文详细介绍了如何使用Bus Hound和MIDIOX工具抓包分析USB MIDI数据流,从硬件接口到软件解析的完整实战过程。通过解析MIDI协议、捕获Note On/Off事件、控制变更消息等实例,帮助开发者深入理解音乐数字接口的底层通信机制,并提供了常见问题的解决方案和调试技巧。

weixin_42692935的博客 407

使用Idea新建Play项目sbt构建失败,提示scala-xml依赖冲突

由于scala-xml1.x与2.x变更较大,所以各类库对其依赖未同时升级导致依赖冲突。本项目是由于play-twirl依赖scala-xml1.x,scala与sbt使用2.x导致。看到paly相关人员已经注意到sbt1.8.0发布的消息,可能很快将会合并scala-xml2.x,发布新的版本后可能不会再存在当前问题。原因:看描述应该是scala-xml这个依赖冲突了,这个依赖用在scala、sbt、play中,初步怀疑由于三个版本不兼容导致。play-twirl关于scala-xml的讨论。

sinat_33819452的博客 1152

地图自定义编码CSV转换成ini文件

创 建 schema.ini 文件:有时,当您尝试使用 .csv 文件将自定义地理信息导入 Tableau 时,您可能会看到“无法使用.csv,因为它不包含唯一列”错误消息。这是因为您的 .csv 文件可能包含数值数据,例如数值邮政编码。对于新的地理角色,Tableau 将只接受文本字段。但是,您可以创建一个 schema.ini 文件,以指示 Tableau 应将您要导入的数值字段视为文本字段。...

wenyusuran的专栏 1975

200Gb/s以上速率的通道信号完整性设计和优化经验(二)

为满足200Gb/s信号完整性需求,需综合优化PCB、连接器、封装及SERDES架构。关键措施包括:采用低粗糙度铜箔与低损耗材料降低传输线损耗(200G目标0.55–0.6dB/cm);通过背钻工艺控制残桩长度至4±2mil;缩减连接器焊盘残桩至600μm以内以消除谐振;封装层面推进跳层走线、低Dk/Df材料与可控SMT工艺;采用PAM4调制与基于ADC/DSP的混合信号架构实现高效均衡。先进CMOS工艺(如纳米片器件)支撑复杂数字处理,协同设计是突破速率瓶颈的核心。

小孟同学的博客 149

scala中的xml解析

xml解析xml加载xml获取元素xml获取子元素获取所有的元素获取属性获取元素的值 xml加载 XML.loadFile("C:/Users/dkh/Desktop/spark/spark/pom.xml") <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSche

qq_52612109的博客 504

【FPGA教程案例37】通信案例7——基于FPGA的FFT,IFFT傅里叶变换和逆变换

关于FFT和IFFT的相关描述,在上一课程我们已经有所了解,本课程不再重复。在上一课程,我们初步掌握了如何通过FFT对输入信号进行频谱分析,在本课程,我们将学习如何通过FPGA实现FFT和IFFT得到初始信号的过程。关于FFT的IP核配置,和上一课程相同。下面直接介绍其verilog调用过程。我们可以看到,IFFT的配置非常简单,在FFT的基础上,只需要将该参数的最后一位改为0,就可以实现IFFT变化。下面我们通过testbench文件,同时调用FFT和IFFT实现信号的傅里叶变换和逆变换。......

FPGA/MATLAB学习教程/源码/项目合作开发 4518

maven混合编译java&scala

步骤: 1. mvn 生成scala项目 mvn archetype:generate \ -DarchetypeGroupId=org.scala-tools.archetypes \ -DarchetypeArtifactId=scala-archetype-simple \ -DremoteRepositories=http://scala-tools.org/repo-rel

拱头的专栏 6242

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

基于IntelliJ IDEA开发Spark的Maven项目——Scala语言

基于IntelliJ IDEA开发Spark的Maven项目——Scala语言 Maven管理项目在JavaEE普遍使用,开发Spark项目也不例外,而Scala语言开发Spark项目的首选。因此需要构建Maven-Scala项目来开发Spark项目,本文采用的工具是IntelliJ IDEA 2016,IDEA工具越来越被大家认可,开发java, python ,scala 支持都非常好

Ganymede的Hadoop世界 3万+

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

使用maven管理scala项目

在初始化环境的问题上一向做法比较多,可能我的做法并不是最优 首先使用maven构造器新建一个工程 mvn archetype:create -DgroupId=org.tony -DartifactId=scala 这样会按照默认为java的工程建立 接下来,我们需要引入maven管理scala项目的一个插件:maven-scala-plugin 官方的文

Tony_老七 6306

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

scala和maven整合

1.scala和maven如何整合 网上有一堆教程讲idea如何new module或new project一步一步来创建scala工程,在这里我不推荐这个。原因是现在主流的开发环境,大多数是采用maven来构建项目的,所以建议大家用maven+plugin的方式来构建scala应用,另外,就象VB.NET/C#/F#可同时在一个项目中使用,最大限度发挥各语种特长一样,java与可以与s...

suojie的博客 1万+

Maven创建scala项目及打包

1.创建新工程 可以选择maven-archetype-quickstart或者scala-archetype-simple。 2.点击next,填写GroupId,ArtifactId。其中GroupId为项目组名,后者为默认项目名。点击next。 3.点击finish即可创建。 4.目录结构如下: 5.在main目录下新建sala目录文件,如下图所示。可以发现scala文件为灰色。 6.点击...

BigData_Mining的博客 7341

maven项目如何打包

说明: (1)胖包:将maven项目中的依赖包和项目打为一个包 。 (2)瘦包:直接打包,不打包依赖包,仅打包出项目中的代码到JAR包中。 1.打瘦包 2.打胖包 第一种:只打胖包 快捷键:Alt+shirt+ctrl+s 定入口函数和胖包的保存路径 开始打包 打胖包完成 3.同时打胖包和瘦包 1.修改maven项目的pom文件 <build> <plugins> <plugin> <artifactId>maven-co

weixin_42834505的博客 1万+

使用 Maven 来构建 Scala

使用 Maven 来构建项目方便虽然方便,但依赖于每一个开发人员都去配置一遍项目的必要依赖,包括 Scala 插件的编译配置以及 Scala 的依赖类库,让每个人通过拷贝(Copy)之前的项目配置当然可以,但难免会出些纰漏。而从头开始所有相关配置项都配置一遍,又略显繁琐,那么,我们可不可以想办法来进一步简化类似的基于 Maven 的 Scala 项目创建和配置?

2401_87105829的博客 1723

使用maven集成java和scala开发环境

使用maven集成java和scala开发环境创建项目增加scala依赖创建目录安装scala插件scala的hello worldmaven 插件配置仓库maven-compile-pluginmaven-scala-pluginmaven-jar-pluginmaven-dependency-pluginmaven-assembly-pluginspark 开发环境 git地址:https://gitee.com/jyq_18792721831/sparkmaven.git 创建项目 我们首先创建一个普

a18792721831的博客 3543

maven scala java 混合项目编译、打包(jar包)、运行

文章目录说明java相关的插件scala相关的插件maven命令打包创建项目分别指定java和scala的source root路径编辑pom文件执行命令运行jaridea打包参考资料 说明 一开始用的是在idea中打包的方式,但是在更新项目结构或是更新以来后,需要手动的去修改原来的配置,不是很方便。于是查找资料看下用maven命令如何打包 java相关的插件 java代码编译与打包,我参考了这篇文章的内容,介绍的很详细:https://blog.youkuaiyun.com/dyq51/article/details

枪枪枪的博客 9286

Eclipse下创建java+scala混合项目

本文主要是利用Eclipse创建一个既能写java代码也能写scala代码的maven项目。还包括利用maven创建父子项目。 1.创建java+scala混合项目 在这里先利用maven创建一个java项目,然后往这个项目里配置scala。 首先安装scala插件。点击 帮助-> Eclipse Marketplace,搜索scala,然后安装即可。 修改maven项目下的pom....

读万卷书 行万里路 2247

scala —— maven scala项目开发

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

星辰大海,脚踏实地 1772

Linux下编译打包 Java/Scala Maven项目

前言:学习spark时,需要用远程集群来跑项目,因此要了解一下如何编译scala maven项目。但是网上资料好乱啊! 只能自己来写一个符合像我一样情况的初学者。 环境: Scala Version: 2.11.12 Java Version: openjdk 1.7 Maven Version: 3.0.5 Java Maven 编译及打jar包 之所以介绍,是因为Java和Scala编译过...

yonghangtian的博客 2394

Maven下Scala和Java混合打包

楔子 Maven下Scala和Java混合打包 ,相关配置文件当独提取出来,依赖的jar包也使用meavn拷贝到一个lib目录下 效果 打包命令 mvn clean scala:compile compile package -- 下面这个 比上面多 dependency:copy-dependencies -DoutputDirectory=target/lib 表示吧依赖的jar 打包...

zhuzi51的专栏 2389
上一篇: Java Thread.interrupt 复习
下一篇: Cxf和Axis使用https进行通信的笔记示例
lhever_
博客等级 码龄14年 213粉丝 130原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值