今天自己重新部署一下intellij下的项目开发环境,顺便把maven管理项目jar包的方法梳理一下

(1)首先下载apache-maven-3.0.4版本的maven,我自己解压在D:\maven\apache-maven-3.0.4目录下,这里我要改一下默认的maven的仓库的路径,在D:\maven\apache-maven-3.0.4\conf下,修改setting.xml配置文件,49到54行注释掉,换成 <localRepository>D:/maven/repo</localRepository>这里是我的仓库地址,你可以自己随便放。

(2)配置Maven环境变量M2_HOME为你解压的目录,如下图新建M2_HOME变量并加到Path中

(3)打开开发工具intellij新建一个maven的项目,如图:

项目建好后,目录如下:

按照Maven约定,项目的主目录位于/src/main/java中,测试目录位于src/test/java中,所以我们在最终打包项目的时候,只包含主目录代码,不会包含测试目录里的代码,而测试目录里的代码只会在测试时候用到。

最后pom.xml这个文件是我们Maven项目的核心文件,POM(Project Object Model,项目对象模型)定义了项目的基本信息,用于描述项目如何构建,声明项目依赖,等等。

我们打开这个文件看看,

01 <?xml version="1.0" encoding="UTF-8"?>
02 <project xmlns="http://maven.apache.org/POM/4.0.0"
03          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
04          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
05     <modelVersion>4.0.0</modelVersion>
06  
07     <groupId>MavenTest</groupId>
08     <artifactId>MavenTest</artifactId>
09     <version>1.0</version>
10  
11      
12 </project>

project 是xml文件的根元素 
modelVersion 定义了当前POM模型的版本,Maven 2 或Maven 3 只能是4.0.0 
griupId 定义了项目属于哪个组,一般来说这个往往和公司或组织关联,比如说,你所在的公司为baishi.那就应该定义为com.baishi.MavenTest,MavenTest为项目名称

artifactId定义了当前Maven项目在组中的唯一id,例如MavenTest这个项目,我则把他定义为MavenTest,还例如spring项目,他的groupId为org.springframework,对于content项目来说artifactId则为spring-content,web项目则为spring-web

(4)这步之后,我具体拿我的项目来说一下maven管理包的依赖:在intellij工具中,file-setttings-maven

看一下,三个配置的位置是否和你的mave相符,一个是maven的安装目录,一个是settings.xml的配置,一个是maven仓库的位置,也是我之前改的仓库的路径

(5)这里我以加入spring框架的依赖举例,在刚才的 pom.xml的核心配置中我们加入:

01     <dependencies>
02         <!-- SPRING begin -->
03         <dependency>
04             <groupId>org.springframework</groupId>
05             <artifactId>spring-aop</artifactId>
06         </dependency>
07         <dependency>
08             <groupId>org.springframework</groupId>
09             <artifactId>spring-context-support</artifactId>
10         </dependency>
11         <dependency>
12             <groupId>org.aspectj</groupId>
13             <artifactId>aspectjrt</artifactId>
14         </dependency>
15         <dependency>
16             <groupId>org.aspectj</groupId>
17             <artifactId>aspectjweaver</artifactId>
18         </dependency>
19         <dependency>
20             <groupId>cglib</groupId>
21             <artifactId>cglib</artifactId>
22         </dependency>
23         <dependency>
24             <groupId>asm</groupId>
25             <artifactId>asm</artifactId>
26         </dependency>
27         <!-- SPRING end -->
28 </dependencies>

(6)接着我们让maven来编译代码,运行一下如图的

选中clean、compile并右键点击Run 即可,接着我们在项目的目录下回看到:

以Maven开头的一些jar包,这些就是 maven 管理下载的项目需要的包,到此所有的步骤都完成了。

IntelliJ IDEA 开发工具项目maven管理的更多相关文章

  1. IntelliJ IDEA 开发工具的一些设置

    IntelliJ IDEA 开发工具的一些设置 参考资料 IntelliJ IDEA 的学习,离不开网络上技术热爱者们的分享,在此向他们表示感谢. 成吨提高开发效率:https://github.co ...

  2. Spring Boot 2.x 入门前的准备-IntelliJ IDEA 开发工具的安装与使用

    常用的用于开发 spring boot 项目的开发工具有 eclipse 和 IntelliJ IDEA 两种,最近有声音提出 visual code 也开始流行开发 java,而且确实如此, vs ...

  3. Java单体应用 - 开发工具 - 02.Maven

    原文地址:http://www.work100.net/training/monolithic-tools-maven.html 更多教程:光束云 - 免费课程 Maven 序号 文内章节 视频 1 ...

  4. 基于IntelliJ IDEA开发工具搭建SSM框架并实现页面登录功能详细讲解二

    接: 接下来配置类 UserController package com.chatRotbot.controller; import com.chatRotbot.model.User; import ...

  5. IntelliJ IDEA开发工具println报错的解决方法

    IntelliJ IDEA 编译 JSP,出现 out.println 报错,下图所示: 报错原因:println报红,这是因为没有关联好服务器! 解决方案:点击File->Project st ...

  6. Intellij IDEA13 创建多模块Maven项目

    目标:构建一个类似于如下图所示的这种结构的Maven项目. 首先,需要选中“File”——>“New Project”如下图所示 选中“Maven”,设置项目名称与项目构建地址,点击“Next” ...

  7. 微信小程序开发——开发者工具中素材管理功能使用的注意事项

    为什么使用“素材管理”: 微信小程序环境中本地资源图片是无法通过 WXSS 获取的,可以使用网络图片,或者 base64,或者使用<image/>标签.. 当然,如果不想这么麻烦,你可能会 ...

  8. intellij IDEA软件java项目No SDK配置jdk开发,安装IDEA软件步骤

    我们在使用intellij idea开发java项目的时候,我们在创建的时候会发现提示No SDK,影响创建和使用项目,我们需要下载和配置需要的JDK 电脑 1我们使用intellij idea创建j ...

  9. Intellij IDEA Java web 项目搭建

    Java web 项目搭建 简介 在上一节java web环境搭建中,我们配置了开发java web项目最基本的环境,现在我们将采用Spring MVC+Spring+Hibernate的架构搭建一个 ...

随机推荐

  1. struts2 获取前台表单的值?? 原理??

    struts2中,在ACTION中申明一个变量 private string 变量名:然后设置变量名 的get/set方法: 在运行的时候struts2会自动获取. 比如:jsp 页面中有个文本框&l ...

  2. C语言中strcpy(char *strDest, const char *strScr)字符串复制库函数的理解与分析

    1.原版的strcpy()函数原型 char * strcpy( char *strDest, const char *strSrc ) { assert( (strDest != NULL) &am ...

  3. 一天一个Java基础——排序

    插入排序 直接插入排序: 当插入第i个数据元素k时,由前i-1个数据元素组成已排序的数据序列,将k与数据序列中各数据元素依次进行比较后,插入到数据序列的适当位置,使得插入后的数据序列仍是排序的. 直接 ...

  4. 也谈http中get和post

    1.get和post区别: 从设计初衷考虑get是为了查询服务器资源(不改变服务器数据及状态,因此说它是安全和幂等的,但get请求参数一般是直接在url后面,浏览器地址栏中会被看到能保存书签及历史记录 ...

  5. 屏蔽页面js报的错误

    有时候,某些js的错误,确实没有什么大影响,但是这个又实在没办法. 一般,下下策采取 <script language="javascript"> function k ...

  6. Delphi 为什么它提示PCHAR是不安全的类型呢 Unsafe type 'PChar'

    DELPHI7已经考虑到了移植到点NET的问题,在点NET里,指针是不安全的.至于为什么有的人遇到,有的人没有遇到,那是因为各人的编译选项不同.在Project菜单下选Options“Compiler ...

  7. IIS部署网站

  8. [Everyday Mathematics]20150201

    设数列 $\sed{a_n}$ 单调递减趋于零, 证明 $\dps{\vsm{n}a_n}$ 收敛当且仅当 $\dps{\vsm{n}3^k a_{3^k}}$ 收敛.

  9. RESTLET开发实例(一)基于JAX-RS的REST服务

    RESTLET介绍 Restlet项目为“建立REST概念与Java类之间的映射”提供了一个轻量级而全面的框架.它可用于实现任何种类的REST式系统,而不仅仅是REST式Web服务. Restlet项 ...

  10. 翻译【ElasticSearch Server】第一章:开始使用ElasticSearch集群(3)

    运行ElasticSearch(Running ElasticSearch) 让我们运行我们的第一个实例.转到bin目录并从命令行运行以下命令: ./elasticsearch –f (Linux o ...