Java学习之Maven使用
Java学习之Maven
0x00 前言#
学习并mark过来一些知识点做留存。
0x01 Maven使用#
- compiled (默认)
对主程序是否有效:有效
对测试程序是否有效:有效
是否参与打包:参与
- test
对主程序是否有效:无效
对测试程序是否有效:有效
是否参与打包:不参与
- provided
对主程序是否有效:有效
对测试程序是否有效:有效
是否参与打包:不参与
测试总结:
-
默认引入 的 jar 包 ------- compile 【默认范围 可以不写】(编译、测试、运行 都有效 )
-
servlet-api 、 jsp-api ------- provided (编译、测试 有效, 运行时无效 防止和 tomcat 下 jar 冲突)
-
jdbc 驱动 jar 包 ---- runtime (测试、运行 有效 )
-
junit ----- test (测试有效)
依赖范围由强到弱的顺序是: compile>provided>runtime>test
需要设置编译版本为 1.8,这里需要使用 maven 的插件来设置:
在 pom.xml 中加入:
<build>
<plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>1.8</source><target>1.8</target>
<encoding>UTF-8</encoding>
</configuration></plugin>
聚合#
主要是聚合,在web中很多站点可以看到反编译后,都是只看到文件夹里只有少量代码,而部分核心代码在一些jar包里面。其实就是用到了maven给模块化开发了。例如下图
maven中嵌套了很多子maven工程。
继承#
<parent>
<artifactId></artifactId>
<groupId></groupId>
<version></version>
<!--以当前项目为基准的父工程pom.xml文件的相对路径-->
<relativePath></relativePath>
</parent>
常用命令#
执行与构建过程(编译,测试,打包)相关的命令必须进入pom.xml所在位置执行
mvn clean:清理(打包好的程序放在生成的名为target的文件中,清理即删除文件中打包好的程序)
mvn compile:编译主程序
mvn test-compile:编译测试程序
mvn test:执行测试
mvn package:打包
mvn install:安装至本地仓库
mvn site:生成站点
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从二进制到误差:逐行拆解C语言浮点运算中的4008175468544之谜
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· C# 13 中的新增功能实操
· Ollama本地部署大模型总结
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(4)
· langchain0.3教程:从0到1打造一个智能聊天机器人
· 2025成都.NET开发者Connect圆满结束