使用IDEA创建Maven工程 - 创建javase工程
2021/6/18 12:58:35
本文主要是介绍使用IDEA创建Maven工程 - 创建javase工程,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
5. 使用IDEA创建Maven工程 - 创建javase工程1.目标
- 能够使用IDEA创建javase的Maven工程
2.路径
- 创建java工程
- java工程目录结构
- 编写Hello World!
3.讲解
一般使用 Idea 创建 java 工程分有两种情况,如下:
- 一个java工程,存在多个 Module 模块项目,也就是说存在多个项目
- 一个java工程,仅有一个项目
那么这两种情况其实创建上都是差不多的,我们直接看看第一种情况。
4. 使用 Maven 的骨架,创建多个 Module 模块的项目
4.1 首先创建一个空工程
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181257309383.png)
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181257324925.png)
4.2 在空工程中创建 Module 模块
创建空工程之后就会出现项目结构,提示需要创建 Module 模块,如下:
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181257343978.png)
4.3 选择使用 Maven 的骨架快速创建 javase 工程
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181257363548.png)
4.4 填写 Maven 项目信息
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181257381644.png)
4.5 配置 Maven 的设置
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181257399276.png)
4.6 设置 Module 项目的名称以及存储地址
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181257416639.png)
4.7 创建 Module 项目之后,Idea 将会自动从远程仓库同步所需的 jar 包
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181257434505.png)
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181257455829.png)
4.8 设置 Java 工程目录结构
创建完毕之后,工程目录如下:
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181257479306.png)
4.8.1 设置 main/java文件夹变成 源码的目录(存放java源码)
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181257499959.png)
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181257518280.png)
4.8.2 设置 test/java文件夹变成 测试源码的目录(存放单元测试)
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181257539190.png)
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181257557601.png)
配置完测试目录之后,我们可以看到缺少了需要的 jar 包。这个后面我们在 pom.xml 中配置。
4.8.3 创建 resources 目录, 变成资源的目录
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181257578573.png)
4.8.4 完整的目录结构
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181257596098.png)
4.9 工程项目的依赖 pom.xml
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181258016254.png)
<?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.lijw</groupId> <artifactId>javase_demo</artifactId> <version>1.0-SNAPSHOT</version> <!-- 项目的名称以及服务url --> <name>javase_demo</name> <!-- FIXME change it to the project's website --> <url>http://www.example.com</url> <!-- 项目的一些属性配置 <project.build.sourceEncoding> 项目构建时候的字符集 <maven.compiler.source> 编译的源码的jdk版本, 设置为1.8版本 <maven.compiler.target> 编译的目标文件的jdk版本, 设置为1.8版本 --> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> </properties> <!-- 该项目引入的所有依赖都写在dependencies里面 --> <dependencies> <!-- 每一个dependency标签就负责引入一个依赖 --> <dependency> <!-- groupId 坐标的组织名 artifactId 坐标的项目名 version 坐标的版本号 scope 依赖的使用范围,如果为test就表示只能在test里面的java里面使用 --> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency> </dependencies> <build> <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) --> <plugins> <!-- clean lifecycle, see https://maven.apache.org/ref/current/maven-core/lifecycles.html#clean_Lifecycle --> <plugin> <artifactId>maven-clean-plugin</artifactId> <version>3.1.0</version> </plugin> <!-- default lifecycle, jar packaging: see https://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_jar_packaging --> <plugin> <artifactId>maven-resources-plugin</artifactId> <version>3.0.2</version> </plugin> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.0</version> </plugin> <plugin> <artifactId>maven-surefire-plugin</artifactId> <version>2.22.1</version> </plugin> <plugin> <artifactId>maven-jar-plugin</artifactId> <version>3.0.2</version> </plugin> <plugin> <artifactId>maven-install-plugin</artifactId> <version>2.5.2</version> </plugin> <plugin> <artifactId>maven-deploy-plugin</artifactId> <version>2.8.2</version> </plugin> <!-- site lifecycle, see https://maven.apache.org/ref/current/maven-core/lifecycles.html#site_Lifecycle --> <plugin> <artifactId>maven-site-plugin</artifactId> <version>3.7.1</version> </plugin> <plugin> <artifactId>maven-project-info-reports-plugin</artifactId> <version>3.0.0</version> </plugin> </plugins> </pluginManagement> </build> </project>
4.10 基于 pom.xml 下载依赖
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181258034296.png)
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181258053695.png)
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181258075468.png)
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181258102275.png)
4.11 执行单元测试
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181258122650.png)
5.小结
- JavaSe工程的骨架
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181258127079.png)
- 项目的结构
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181258130961.png)
6.不使用 Maven 骨架,创建 javase 工程
6.1 创建 Module 模块,不使用 Maven 的骨架
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181258150643.png)
填写项目的信息,注意 Parent 等要设置为 none,如下:
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181258173730.png)
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181258191064.png)
6.2 自动创建好的工程目录结构
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181258214574.png)
不适用 Maven 骨架创建项目存在一定的优点和缺点,如下:
-
优点:
- 自动创建完整的工程目录结构
- 初始化项目较快,因为不需要下载多余的 jar 包依赖
-
缺点:
- pom.xml 配置没有内置一些配置,也就是都需要自己去配置填写了。
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181258233988.png)
6.3 额外 pom.xml 的配置
6.3.1 设置项目的打包方式为 jar 包
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181258253418.png)
<!-- 设置项目的打包方式 --> <packaging>jar</packaging>
6.4 引入 junit 依赖
我们可以按住 alt + insert
快捷输入依赖,如下:
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181258272606.png)
输入需要的依赖名称,选择版本导入:
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181258292138.png)
6.5 下载新增的依赖
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181258311225.png)
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181258330609.png)
6.6 创建单元测试
上面配置好了 junit 依赖之后,就可以写一个单元测试来执行一下:
![watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=](/upload/202106/18/202106181258349218.png)
这篇关于使用IDEA创建Maven工程 - 创建javase工程的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-26结对编程到底难不难?答案在这里
- 2024-06-19《2023版Java工程师》课程升级公告
- 2024-06-15matplotlib作图不显示3D图,怎么办?
- 2024-06-1503-Loki 日志监控
- 2024-06-1504-让LLM理解知识 -Prompt
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现
- 2024-06-03为什么以及如何要进行架构设计权衡?
- 2024-05-31全网首发第二弹!软考2024年5月《软件设计师》真题+解析+答案!(11-20题)
- 2024-05-31全网首发!软考2024年5月《软件设计师》真题+解析+答案!(21-30题)