文档章节

构建和管理Maven项目

开源俱乐部
 开源俱乐部
发布于 2014/06/20 11:54
字数 821
阅读 95
收藏 0

一、构建Maven项目

(1)命令行下构建maven项目

        mvn archetype:generate   

        -DgroupId=com.mycompany.app   

        -DartifactId=my-app-simple 

        -Dversion=1.0   

        -DarchetypeArtifactId=maven-archetype-quickstart  

        运行上述命令后即可在当前目录创建一个简单的maven项目,创建的时候会从Maven网络中央工厂下载相关的依赖,需心等待。

(2)使用MyEclipse构建maven项目

        【New】》【Other】》【Maven Project】,如下图所示:

        

        点击【Next】按钮,进入如下界面:

        

        保持默认不变,直接【Next】,进入下图:

        Catalog选择:“All Catalogs”;

        默认已经帮我们选择了“maven-archetype-quickstart”,使用这种archetypes可以帮我们创建一个简单的maven项目。如下图所示:

        

        如果我们想创建webapp,可以在Filter中输入:webapp。

        然后在下面选择“maven-archetype-webapp”,如下图所示:

        

        点击【Next】,进入如下界面:

        

        填写“Group Id”、“Artifat Id”,并设置好“Version”、“Package”等信息。相关参数的意思,稍后介绍。

        填写完毕后,点击【Next】按钮。

        这时可能会从网络下载相关依赖包,耐心等待直到完成。这时候,项目就创建好了,项目目录结构如下图所示:

        

(3)目录结构介绍

        src/main/java : java源文件存放位置
        src/main/resource : resource资源,如配置文件等
        src/test/java : 测试代码源文件存放位置

        本示例中,“src/main/java”、“src/test/java”两个是没有的,可以【右键】,【新建】【Source Folder】进行创建。建议名字跟Maven标准保持一致。

(4)坐标及坐标元素简介

        打开“pom.xml”,可以看到如下代码:

  ......    
  <groupId>com.uni2uni.myapp</groupId>
  <artifactId>myapp</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>war</packaging>
  <name>myapp Maven Webapp</name>
  <url>http://maven.apache.org</url>
  ......

        包含“groupId”、“artifactId” 和“version” 的三行,这三个元素共同构成了一个项目的基本坐标。对于任何依赖来说,基本坐标是最重要的。Maven根据坐标才能找到相应的依赖。

        groupId:定义了项目属于哪个组,这个组往往和项目所在的组织或公司存在关联。通常使用“域名反向+项目名”。

        artifactId:定义了当前Maven项目在组织中唯一的ID, 可以理解为项目中的模块, 模块为Maven中最小单位构件。通常使用项目名。

        version:项目的版本。

        除了以上三个坐标元素外,还有:

        packaging:默认值jar。可选的值为“jar"、“war”、“ear”。

        classifier:该元素用来帮助定义构建输出的一些附件。

(5)简单Maven命令介绍

        以下命令必须在cmd中的项目目录中运行。

        mvn compile:编译

        mvn clean:清理

        该命令会将target文件删除。

        mvn test:测试

        该命令会执行“/src/test/java”下的Junit测试代码。

        mvn package:打包

        该命令会将项目打成jar包,并放在target目录中。

        mvn install:安装

        该命令会将项目jar包安装到本地仓库中,以便其它项目使用。执行此命令前会先执行编译、测试、打包命令。        

二、管理Maven项目

(1)导入已经创建好的Maven项目

        【File】》【Import...】;

        然后在文本框中输入maven,选择【Existing Maven Projects】

        点击【Next】

        在“Root Directory”中设置Maven项目的路径。

        点击【Finish】。

三、知识扩展

(1)界面中运行Maven命令

        项目上【右键】,点击【Run as】,如下图:

        


© 著作权归作者所有

共有 人打赏支持
开源俱乐部
粉丝 10
博文 39
码字总数 31422
作品 0
朝阳
架构师
私信 提问
maven基本概念

Maven(翻译为"专家","内行")是跨平台的项目管理工具。主要服务于基于Java平台的项目构建,依赖管理和项目信息管理。 1.1、项目构建   项目构建过程包括【清理项目】→【编译项目】→【测试...

camillelm
2016/01/13
20
0
Maven基础知识

本人博客文章网址:https://www.peretang.com/basic-knowledge-of-maven/ Maven简介 Maven , 用于Java项目的构建 , 依赖管理 , 项目信息管理的项目管理工具. 是Apache组织旗下的开源项目. Mav...

PereTang
2017/05/09
0
0
Apache Maven --- [简易入门]

Apache Maven 是一个软件项目管理和理解工具.它基于POM(project object model,项目对象模型),它可以从一个中央信息来管理项目的构建,报告和文档. Introduction: Maven,在犹太语中的意思是知识...

moonsnake777
2016/05/06
105
0
Maven构建自动化

构建自动化定义相关工程项目构建过程中,在当项目构建成功完成启动的情况下,来确保所依赖的项目是稳定的。 实例 考虑一个团队正在开发一个项目总线核心API上的其他两个项目的应用程序:网页...

park
2017/11/28
0
0
使用jenkins实现tomcat自动化部署

1.下载jenkins的war包 wget "http://mirrors.jenkins.io/war-stable/latest/jenkins.war" 2.启动jenkins程序 nohup java -jar jenkins.war --httpPort=52201 &>> /root/jenkins.log & 3.访问......

信酱v
2017/06/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周三乱弹 —— 程序员左轮轮盘赌注

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @莱布妮子 :分享Bon Jovi的单曲《You Give Love a Bad Name》 《You Give Love a Bad Name》- Bon Jovi 手机党少年们想听歌,请使劲儿戳(这...

小小编辑
29分钟前
448
11
oracle 用户密码过期-ORA-28001: 口令已经失效

oracle 用户密码过期-ORA-28001: 口令已经失效 操作步骤: [BEGIN] 2018-10-23 17:25:43Last login: Mon Sep 3 08:46:32 2018 from 10.2.202.12#登陆数据库#(1)在命令窗口中输入:...

诺岚
33分钟前
1
0
[转载]Yarn作业提交流程

1、yarn简述 yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式操作系统平台,而mapreduce等运算程序则相当于运行与操作系统之上的应用程序。yarn在hadoop2.x系列...

hnairdb
37分钟前
0
0
WebSocketdemo

WebSocket是html5提供的一种在单个tcp连接上进行全双工通讯的协议。 Http协议是无状态、无连接的、单向的应用层协议,采用了请求响应模型,通信请求智能有客户端发起,服务端对请求做出应答处...

qiang123
44分钟前
1
0
谷歌推迟公布Google+漏洞遭参议员不满

参议院商务委员会主席约翰·图恩和另外两位参议员杰瑞·莫兰和罗杰·维克发出信函,要求谷歌解释推迟披露此问题的原因。信中称:“谷歌如果要保持或重获用户对其服务的信任,就必须在公众和立...

linuxCool
51分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部