一般使用 Idea 创建 java 工程分有两种情况,如下:
那么这两种情况其实创建上都是差不多的,我们直接看看第一种情况。
创建空工程之后就会出现项目结构,提示需要创建 Module 模块,如下:
创建完毕之后,工程目录如下:
配置完测试目录之后,我们可以看到缺少了需要的 jar 包。这个后面我们在 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: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>
填写项目的信息,注意 Parent 等要设置为 none,如下:
不适用 Maven 骨架创建项目存在一定的优点和缺点,如下:
<!-- 设置项目的打包方式 --> <packaging>jar</packaging>
我们可以按住 alt + insert
快捷输入依赖,如下:
输入需要的依赖名称,选择版本导入:
上面配置好了 junit 依赖之后,就可以写一个单元测试来执行一下: