前言
最近在学习Hadoop,每次创建项目都要复制之前项目的pom.xml
通用文件,也是比较烦的。正好记得Maven可以创建自己的项目骨架的,也即是Archetype。有了项目骨架,不但pom.xml通用自动生成,还可以生成项目默认的Driver启动类等等。
环境
- Maven 3.3.9
- JDK 1.8
- Eclipse Neon.2 Release (4.6.2)
- IntelliJ IDEA 2016.3.4
- Sonatype Nexus 3.x
配置
首先将Maven和JDK都加入环境变量,这个就不多说。Eclipse下载最新版本就好,Nexus只是为了将其上传到远程仓库,方便其他电脑也可以使用。
工具都准备好了以后,开始配置了。
Windows系统打开C:\Users\[登录的用户名]\.m2\settings.xml
Linux系统打开:~/.m2/settings.xml
如果没有该文件则创建,添加内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<servers>
<server>
<id>releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
</servers>
</settings>
创建骨架
一开始我们可以创建一个目录,用于存放项目文件与文件夹。为了避免创建一大堆的目录,我们可以基于通用的apache骨架进行创建。
打开命令行,输入以下命令:
mvn archetype:generate
默认就会出来一些apache项目的骨架了,我们可以选择一个即可。
选择quickstart,这里输入7回车。
然后会出现提示,依次输入项目groupId、artifactId、version以及package最后输入Y即可。如下图:
之后会自动创建好项目,生成的文件夹名就是之前填写的artifactId
。
配置项目pom
进入项目目录,打开pom.xml文件默认为以下内容:
<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.infosys.hadoop</groupId>
<artifactId>hadoop-archetype</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>hadoop-archetype</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project
现在我们就需要进行定制改造了。