Maven 用于 Java 项目的依赖管理和项目生命周期管理。假设已安装 Java 8、IntelliJ IDEA 和 Git。
开发环境搭建
安装 Maven
目前 Maven 的最新版本是 3.9.9,但公司 CI 使用的是 3.5.2,因此我们以 3.5.2 为例。下载 Maven 压缩包,点击 Maven 3.5.2 下载地址。将下载的 apache-maven-3.5.2-bin.zip
压缩包移动到 /opt
目录下并解压缩。
mv apache-maven-3.5.2-bin.zip/opt
cd /opt
unzip apache-maven-3.5.2-bin.zip
配置软连接
cd /usr/local/bin
ln -s/opt/apache-maven-3.5.2/bin/mvn.
验证是否安装成功
$ mvn -v
Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 2017-10-18T15:58:13+08:00)
Maven home: /opt/apache-maven-3.5.2
Java version: 1.8.0_131, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "mac os x", version: "10.16", arch: "x86_64", family: "mac"
常用命令
mvn clean
清除编译生成的.class
文件,对于 maven 项目,本质是删除项目下的 target 目录。mvn test
执行 JUnit 单元测试mvn -DskipTests
不执行单元测试mvn package
打包构建mvn install
将 jar 包安装到本地 maven 仓库mvn dependency:tree
查看依赖树mvn dependency:tree -Dverbose
深度查看依赖树mvn report
mvn checkstyle:checkstyle
mvn checkstyle:check
mvn site
建议组合使用命令,例如 mvn -DskipTests clean package
,表示跳过单元测试,清除之前的编译结果,并重新打包构建。
创建项目
新建项目
在 IDEA 欢迎界面中,点击 Create New Project 菜单,进入新建项目向导。在右侧选择 Maven,其余保持默认,然后点击 Next 按钮。
输入 Maven 项目的三元坐标,(GroupId, ArtifactId, Version) 如下图所示。
点击 Next 按钮。设置项目名字,以及项目路径。
点击 Finish 按钮,完成项目创建。项目结构如下图所示。
加入版本控制
创建忽略文件列表,新建 .gitignore
文件,加入以下内容
.idea
target
*.iml
.DS_Store
初始化版本仓库,提交代码
git init
git add .
git commit -a -m 'init'
Hello World
选中 src/main/java
目录,右键 New, Java Class, 创建 HelloWorld 类
键入如下图所示的代码。将光标定位在编辑窗口,右键菜单 Run ‘HelloWorld.main()’
整数累加
在 HelloWorld 类中继续键入如下代码。
int sum = 0;
for (int i = 1; i<= 100; i++) {
sum += i;
}
System.out.println(String.format("1+2+...+100 = %d", sum));
执行代码输出结果:1+2+...+100 = 5050
.
字符串拼接
String[] strs = {"你", "我", "他"};
String res = "";
for (String str: strs) {
res += str;
res += ",";
}
System.out.println("手动拼接:" + res.substring(0, res.length() - 1));
执行代码输出结果:手动拼接:你,我,他
.
引入工具类
添加 Maven 依赖。
在 pom.xml
中增加如下 dependencies
节点。
<dependencies>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.9</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-text</artifactId>
<version>1.8</version>
</dependency>
</dependencies>
添加完毕以后,pom.xml
文件如下图所示。
搜索查看 public 的 Java 工具包,建议访问:https://mvnrepository.com.
System.out.println("工具类拼接:" + StringUtils.join(strs, ","));
// 最长公共子序列
String text1 = "abcdefg";
String text2 = "abefcdg";
LongestCommonSubsequence subsequence = new LongestCommonSubsequence();
Integer length = subsequence.apply(text1, text2);
CharSequence sequence = subsequence.longestCommonSubsequence(text1, text2);
System.out.println(String.format("最长公共子序列:%s, 长度:%d", sequence, length));
执行代码,输出如下结果
工具类拼接:你,我,他
最长公共子序列:abefg, 长度:5