使用 Maven 创建 jar / war 项目

使用 Maven 创建 jar 项目

  • maven-archetype-quickstart 这个Archetype,基本内容包括: 一个包含junit依赖声明的
    pom.xml 、src/main/java主代码目录及一个名为App的类 、src/test/java测试代码目录及一个名为
    AppTest的测试用例
  • maven-archetype-webapp 一个最简单的Maven war项目模板,当需要快速创建一个Web应用的
    时候可以使用它。生成的项目内容包括: 一个packaging为war且带有junit依赖声明的pom.xml
    src/main/webapp/目录、src/main/webapp/index.jsp文件、src/main/webapp/WEB-INF/web.xml文件、resources目录

每个Maven项目都有自己的坐标。

  • GroupId:公司网址倒写。
  • ArtifactId:项目名。项目名随意起,不建议写成中文。
  • Version:默认就有。目前对我们来说不需要修改。其中1.0 表示版本号,SNAPSHOT表示快照(当 Version 中带有 SNAPSHOT 发布到中央仓库或私服时会上传到快照库。而Version中不带有 SNAPSHOT 的项目会发布到 public 库。由于我们目前不使用私服,所以带不带 SNAPSHOT 没有影响)

pom.xml :

  • <project> 是根标签,必须得有的。
  • <modelVersion> 自动生成,指定pom默认版本。对于 Maven 2.x、Maven 3.x中 modelVersion 必须是4.0.0
  • <groupId> 、 <artifactId> 、 <version> 表示当前项目的坐标,里面信息都是在新建项目时填写的信息。
  • <packaging> 项目类型

项目目录:

  • TestMavenJar // 项目名
  • .idea // IDEA中所有项目都会生成这个文件夹,我们可以不管
  • src/main/java // 所有.java源文件存放位置,也就是存放java代码的。此目录默认只能编
    译.java文件,放java代码以外的东西是不识别的。
  • src/test // 测试目录,这个里面的内容不会被编译,因为对运行无用的,只是编写代码
    阶段进行测试的
  • src/text/java // 所有测试类的目录
  • target //该目录是项目编译后产生的一个目录,主要存放的是编译后的.class文件。
    (如果没有编译目录不存在)
  • pom.xml // Maven最重要的文件,学习Maven很大一部分都在学习此文件如何编
    写。
  • External Libraries // 当前项目所有依赖的jar

如果想要在项目中加入配置文件(如properties文件、xml文件等),那么需要自己手动加入resources目

录:除了.java文件,其他文件都放入到这个目录。编译后会把此目录所有内容直接放入到classes目

录。main右键新建目录:

使用 Maven 创建 war 项目


相关推荐
卷福同学几秒前
来上海三个月,我在马路边上遇到了阿里前同事...
java·后端
bingbingyihao2 小时前
多数据源 Demo
java·springboot
在努力的前端小白7 小时前
Spring Boot 敏感词过滤组件实现:基于DFA算法的高效敏感词检测与替换
java·数据库·spring boot·文本处理·敏感词过滤·dfa算法·组件开发
一叶飘零_sweeeet9 小时前
从繁琐到优雅:Java Lambda 表达式全解析与实战指南
java·lambda·java8
艾伦~耶格尔10 小时前
【集合框架LinkedList底层添加元素机制】
java·开发语言·学习·面试
一只叫煤球的猫10 小时前
🕰 一个案例带你彻底搞懂延迟双删
java·后端·面试
最初的↘那颗心10 小时前
Flink Stream API 源码走读 - print()
java·大数据·hadoop·flink·实时计算
JH307311 小时前
Maven的三种项目打包方式——pom,jar,war的区别
java·maven·jar
带刺的坐椅12 小时前
轻量级流程编排框架,Solon Flow v3.5.0 发布
java·solon·workflow·flow·solon-flow
David爱编程12 小时前
线程调度策略详解:时间片轮转 vs 优先级机制,面试常考!
java·后端