maven打包scala+java工程
在 scala和java混合编程的时候,需要添加一些额外的配置到pom中,才能将scala文件的class加到最终的jar中
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | <build> <pluginManagement> <plugins> <plugin> <groupId>org.scala-tools< /groupId > <artifactId>maven-scala-plugin< /artifactId > <version>2.15.2< /version > <executions> <execution> < id >scala-compile< /id > <goals> <goal>compile< /goal > < /goals > <configuration> <!--includes是一个数组,包含要编译的code--> <includes> <include>**/*.scala< /include > < /includes > < /configuration > < /execution > <execution> < id >scala- test -compile< /id > <goals> <goal>testCompile< /goal > < /goals > < /execution > < /executions > < /plugin > <plugin> <groupId>org.apache.maven.plugins< /groupId > <artifactId>maven-assembly-plugin< /artifactId > <version>3.1.0< /version > <configuration> <descriptorRefs> <descriptorRef>jar-with-dependencies< /descriptorRef > < /descriptorRefs > < /configuration > <executions> <execution> < id > make -assembly< /id > <phase>package< /phase > <goals> <goal>single< /goal > < /goals > < /execution > < /executions > < /plugin > <plugin> <groupId>org.apache.maven.plugins< /groupId > <artifactId>maven-compiler-plugin< /artifactId > <version>3.7.0< /version > <configuration> < source >1.8< /source > <target>1.8< /target > < /configuration > < /plugin > < /plugins > < /pluginManagement > < /build > |
打包的命令
1 | mvn clean scala:compile compile package assembly:single -Pproduction -Dmaven. test .skip= true |
或者
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | <build> <plugin> <groupId>org.scala-tools< /groupId > <artifactId>maven-scala-plugin< /artifactId > <version>2.15.2< /version > <executions> <execution> < id >scala-compile< /id > <goals> <goal>compile< /goal > < /goals > <configuration> <!--includes是一个数组,包含要编译的code--> <includes> <include>**/*.scala< /include > < /includes > < /configuration > < /execution > <execution> < id >scala- test -compile< /id > <goals> <goal>testCompile< /goal > < /goals > < /execution > < /executions > < /plugin > <plugin> <groupId>org.apache.maven.plugins< /groupId > <artifactId>maven-assembly-plugin< /artifactId > <version>3.1.0< /version > <configuration> <descriptorRefs> <descriptorRef>jar-with-dependencies< /descriptorRef > < /descriptorRefs > < /configuration > <executions> <execution> < id > make -assembly< /id > <phase>package< /phase > <goals> <goal>single< /goal > < /goals > < /execution > < /executions > < /plugin > <plugin> <groupId>org.apache.maven.plugins< /groupId > <artifactId>maven-compiler-plugin< /artifactId > <version>3.7.0< /version > <configuration> < source >1.8< /source > <target>1.8< /target > < /configuration > < /plugin > < /plugins > < /build > |
打包
1 | mvn package assembly:single |
本文只发表于博客园和tonglin0325的博客,作者:tonglin0325,转载请注明原文链接:https://www.cnblogs.com/tonglin0325/p/13790591.html
分类:
Maven
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 字符编码:从基础到乱码解决