CentOS 7.2 64 位操作系统

安装 Maven

Maven 简介

Apache Maven 是一个软件项目管理及自动构建工具,由 Apache 软件基金会所提供。基于项目对象模型(缩写:POM)概念,Maven 利用一小段描述信息能管理一个项目的构建、报告和文档等步骤。

Java 安装

首先我们需要准备 Java 开发环境,使用下面命令来安装 Java:

yum -y install java-1.8.-openjdk-devel

Maven 下载

我们可以从官网下载页获取最新的下载链接(Binary tar.gz archive)。

然后我们使用 wget 命令将其下载:

cd /home
wget http://mirrors.shuosc.org/apache/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz

解压压缩包:

tar xzvf apache-maven-3.5.-bin.tar.gz

将文件夹移动至 /usr/local/ 目录:

mv apache-maven-3.5. /usr/local/apache-maven

配置环境变量

编辑 /etc/profile,在最下方添加:

MAVEN_HOME=/usr/local/apache-maven
export MAVEN_HOME
export PATH=${PATH}:${MAVEN_HOME}/bin

Ctrl + S 保存文件,并运行如下命令使环境变量生效:

source /etc/profile

检查 Maven 是否成功安装:

mvn -version

Maven 简单使用

构建

我们可以通过 archetype:generate 命令快速构建出项目骨架。

Hello World

我们使用该命令创建一个 helloworld 项目。过程中可一路回车键选择默认值。(mvn 指令首次执行时,会从远程“中央仓库”下载一些必需的文件,请耐心等待,安装中的问题可以参考:http://www.cnblogs.com/jikexianfeng/p/8454638.html)

cd /home
mvn archetype:generate -DgroupId=helloworld -DartifactId=helloworld

项目结构

点击 /home/helloworld 查看项目结构。
其中:
/pom.xml 为项目对象模型(Maven 项目配置)
/src/main/java 用于存放源代码
/src/test/java 用于存放单元测试代码
/src/target 用于存放编译、打包后的输出文件

编译

进入项目目录:

cd /home/helloworld

执行编译:

mvn compile

重新开启 helloworld 项目文件夹,可以看到生成 target 目录。

运行

你可以使用 mvn 指明 mainClass 来运行项目:

mvn exec:java -Dexec.mainClass="helloworld.App"

完成后可看到终端输出了:

Hello World!

测试

我们可以通过 test 指令来运行单元测试代码。

mvn test

完成后可看到终端输出测试结果。

打包

通过 package 指令来执行打包。

mvn package

重新开启 target 目录,可看到生成了 .jar 文件。(从输出的日志可以看到,执行 package 前,会先执行 compile 及 test,最后执行了打包)

完成实验

恭喜!您已经成功完成了 Maven 安装与入门 的实验任务,您可以选择 留用 继续使用该环境。

基于Centos搭建Maven 安装与使用的更多相关文章

  1. 基于 CentOS 搭建 WordPress 个人博客

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 腾讯云提供了开发者实验室帮助用户搭建 WordPress 个人博客,教程内容如下,用户可以点击开发者实验室快速上机完成实验. 准备 LNMP ...

  2. 基于centos搭建微信小程序服务,配置及数据库等

    基于centos搭建小程序, ps:请提前20天准备将域名备案,申请ssl证书 实验上机地址:https://cloud.tencent.com/developer/labs/lab/10004 准备 ...

  3. 基于centos的docker安装

    1. 安装需求 内核版本3.10以上 Centos 7以上 64位版本 2. 使用root登录或者具有sudo权限 3. 确保系统是最新的 yum update 4. 添加yum源 tee /etc/ ...

  4. 基于CentOS搭建基于 ZIPKIN 的数据追踪系统

    系统要求:CentOS 7.2 64 位操作系统 配置 Java 环境 安装 JDK Zipkin 使用 Java8 -openjdk* -y 安装完成后,查看是否安装成功: java -versio ...

  5. 基于CentOS搭建Nginx 静态网站

    系统要求: CentOS 7.2 64 位操作系统 一. 安装 Nginx(在 CentOS 上,可直接使用 yum 来安装 Nginx) yum install nginx -y 安装完成后,使用 ...

  6. 基于Centos搭建Jenkins 环境搭建

    系统要求: CentOS 7.2 64 位操作系统 安装 Jenkins Jenkins 简介 Jenkins 是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提 ...

  7. 基于Docker搭建Maven私服Nexus,Nexus详解

    备注:首先在linux环境安装Java环境和Docker,私服需要的服务器性能和硬盘存储要高一点,内存不足可能到时启动失败,这里以4核8GLinux服务器做演示 一:基于Docker安装nexus3 ...

  8. 基于Centos搭建 Discuz 论坛

    系统要求:CentOS 6.8 64 位操作系统 搭建 Discuz 论坛 准备 LAMP 环境 LAMP 是 Linux.Apache.MySQL 和 PHP 的缩写,是 Discuz 论坛系统依赖 ...

  9. 基于Centos搭建Django 环境搭建

    CentOS 7.2 64 位操作系统 安装 Django 先安装 PIP,再通过 PIP 安装 Django 安装 PIP cd /data; mkdir tmp; cd tmp; wget htt ...

随机推荐

  1. (第2篇)一篇文章教你轻松安装hadoop

    摘要: 这篇文章将会手把手教你安装hadoop,只要你细心按照文章中的步骤操作,hadoop肯定能正确安装,绝对不会让你崩溃 博主福利 给大家赠送一套hadoop视频课程 授课老师是百度 hadoop ...

  2. KNN分类算法实现手写数字识别

    需求: 利用一个手写数字“先验数据”集,使用knn算法来实现对手写数字的自动识别: 先验数据(训练数据)集: ♦数据维度比较大,样本数比较多. ♦ 数据集包括数字0-9的手写体. ♦每个数字大约有20 ...

  3. 【Java】 剑指offer(53-1) 数字在排序数组中出现的次数

    正文 本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集   题目 统计一个数字在排序数组中出现的次数.例如输入排序数组{1, ...

  4. MATLAB·提取图像中多个目标

    基于matlab工具箱提取图像中的多目标特征(代码如下): 代码前面部分为提取图像的边界信息,调用了后面的遍历函数Pixel_Search,函数实现方法见后~ %%ROI Testing close ...

  5. (转)MyBatis+MySQL 返回插入的主键ID

    MyBatis+MySQL 返回插入的主键ID 需求:使用MyBatis往MySQL数据库中插入一条记录后,需要返回该条记录的自增主键值. 方法:在mapper中指定keyProperty属性,示例如 ...

  6. 《Java并发编程的艺术》--Java中的锁

    No1: Lock接口 Lock lock = new ReentrantLock(); lock.lock(); try{ }finally{ lock.unlock(); } No2: 不要讲获取 ...

  7. hdu 2126 Buy the souvenirs 【输出方案数】【01背包】(经典)

    题目链接:https://vjudge.net/contest/103424#problem/K 转载于:https://blog.csdn.net/acm_davidcn/article/detai ...

  8. Luogu2586 [ZJOI2008]杀蚂蚁 ---- 模拟

    Luogu2586 [ZJOI2008]杀蚂蚁 题意 还是一道大模拟 https://www.luogu.org/problemnew/show/P2586 大概就是炮塔大蚂蚁的故事 下载这个游戏ht ...

  9. WinForm timer 控件

    timer 控件:按用户定义的时间间隔引发的事件 属性: Enabled 是否启用: Interval 事件发生的事件间隔,单位是毫秒 事件只有一个:Tick 事件经过指定的时间间隔发生 打开一个窗口 ...

  10. 4712: 洪水 基于链分治的动态DP

    国际惯例的题面:看起来很神的样子......如果我说这是动态DP的板子题你敢信?基于链分治的动态DP?说人话,就是树链剖分线段树维护DP.既然是DP,那就先得有转移方程.我们令f[i]表示让i子树中的 ...