Mevan
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mevan相关的知识,希望对你有一定的参考价值。
Maven
maven是apache下的一个开源项目,只能用maven来管理java工程,maven的主
要作用是管理我们项目中所需要的jar包
下载安装
下载地址是http://maven.apache.org/download.cgj
解压即安装.最好解压到一个没有中文和空格的目录最终
配置环境变量
电脑上需要安装jdk1.7以上的jdk,需要配置JAVA_HOME
配置MAVEN_HOME
将%MAVEN_HOME %/bin配置到环境变量path中
在cmd窗口中输入mvn -v查看
配置成功
maven的仓库
maven是将用到的所有jar包,保存到仓库,仓库分为三种,本地仓库,远程仓库,中
央仓库
本地仓库是我们自己进行管理,在本机的电脑中存的
远程仓库(私服)有的公司会自己搭建一个属于公司内部的仓库
中央仓库,有maven团队进行管理,维护着大概两个亿的jar包
本地仓库没有所需要的jar包,会一级一级进行下载,如果没有远程
仓库,本地仓库就
会直接从中央仓库进行下载
配置本地仓库
将仓库进行解压到maven文件夹下对项目进行清理,编译,运行,打
包等操作,以下操作需要进入maven工程下
compile编译命令
通过mvn compile可以编译src/main/java下的文件生成class文
件输出到target文件夹,不会编译test的文件夹
test编译命令
通过mvn test可以编译src/test/java下的单员测试类
clean命令
通过mvn clean可以清楚target下的文件
package命令
通过mvn package可以将web项目打包成war, java项目打包成
jar,放在target目录下,使用此命令会执行compoile,test
install命令
通过mvn install可以将对应的应用打包成war和jar并发布到本地
仓库中,对于war包发布到本地仓库是没有用的,因为我们要进行依
赖管理只会管理jar包,内部会执行compile,test,package
tomcat: run 命令
通过mvn tomcat:run可以使用内置的tomcat插件运行web应用,
注意结束窗口使用ctrl+v
命令同时执行
可以通过mvn clean install同时执行两个命令
maven项目构建
eclipse需要安装m2e插件,我们的eclipse中已经集成了m2e
插件,所以我们不需要再去下载m2e的插件
eclipse中默认带了maven管理,我们可以使用我们下载的版本
进行相关操作
加载默认配置文件,从我们配置的文件中加载
新建maven项目
跳过骨架操作
如果不跳过骨架,创建的工程的目录是不完整的
设置坐标和打包方式
jar表示java工程
war表示web工程
pom表示父类工程(分模块开发的时候需要)
默认没有web.xml文件需要进行添加web.xml文件
建立索引
创建servlet
添加jar的依赖管理
maven的依赖管理
通过maven的依赖管理对项目中的jar包进行统一的管理
<dependencies>标签表示当前项目所依赖dejar包,其内部是
<dependency>标签
<dependency>表示具体的依赖其内部有4个标签
<groupId>表示组织名+项目名
<artifactId>模板块名称
<version>表示版本号
<scope>表示依赖范围
compile 表示编译时依赖,是默认值,会在编译,测试,运行的时候都要使用
provided只在编译和测试时依赖,运行的时候不依赖,如servlet-api因为
tomcat已经提供,所以运行的时候如果使用就会出现错误,所以设置为
provided
runtime运行和测试的时候需要,编译的时候不需要,如runtime
test测试的时候依赖,编译和运行的时候不依赖,如Junit
system依赖范围和provide相同,但是需要提供一个磁盘路径,不推荐使用
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifact Id>
<version>2.5</version>
<scope>provided</scope>
</dependency>
</dependencies>
maven的坐标查找
网页查找
如果我们需要使用jar包,就需要知道对应jar包的坐标,可以通过
搜索本地仓库
本地仓库需要先构建索引,前面已经介绍
配置插件
maven中也可以配置很多插件,如jdk版本和tomcat的插件
<build> 项目构建配置,配置编译,运行插件等
<plugins>内部放<plugin>,是管理的插件
<plugin>插件标签,内部配置该插件内部有<configration>
<configuration>表示配置信息
处理编译器版本
我用的处理器是1.8所以这个不用配置
<build>
<plugins>
<plugin>
<groupId>org.apache.mave n.plugins</groupId>
<artifactId>maven-compile r-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<encoding>UTF-8</enco ding>
</configuration>
</plugin>
</plugins>
</build>
tomcat插件
<build>
<plugins>
<plugin>
<groupId>org.apache.tomcat.ma ven</groupId>
<artifactId>tomcat7-maven-plu gin</artifactId>
<version>2.2</version>
<configuration>
<port>8081</port>
</configuration>
</plugin>
</plugins>
</build>
ssm框架比较完整的配置
<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.zhiyou200</groupId>
<artifactId>ssm-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>
<!-- 集中定义依赖版本号 -->
<properties>
<!-- 单元测试 -->
<junit.version>4.12</junit.version>
<!-- Spring -->
<spring.version>4.2.4.RELEASE</spring.version>
<!-- Mybatis -->
<mybatis.version>3.2.7</mybatis.version>
<mybatis.spring.version>1.2.2</mybatis.spring.version>
<!-- mysql -->
<mysql.version>5.1.32</mysql.version>
<!-- 连接池 -->
<c3p0.version>0.9.1.2</c3p0.version>
<!-- 日志处理 -->
<slf4j.version>1.6.4</slf4j.version>
<!-- Jackson Json处理工具包 -->
<jackson.version>2.4.2</jackson.version>
<!-- JSP相关 -->
<jstl.version>1.2</jstl.version>
<servlet-api.version>2.5</servlet-api.version>
<jsp-api.version>2.0</jsp-api.version>
<!-- Apache工具组件 -->
<commons-lang3.version>3.3.2</commons-lang3.version>
<commons-io.version>1.3.2</commons-io.version>
<commons-net.version>3.3</commons-net.version>
<!-- 文件上传组件 -->
<commons-fileupload.version>1.3.1</commons-fileupload.version>
</properties>
<dependencyManagement>
<dependencies>
<!-- 单元测试 -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
<!-- Spring -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jms</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- Mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>${mybatis.version}</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>${mybatis.spring.version}</version>
</dependency>
<!-- MySql -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql.version}</version>
<scope>runtime</scope>
</dependency>
<!-- 连接池 -->
<dependency>
<groupId>c3p0</groupId>
<artifactId>c3p0</artifactId>
<version>${c3p0.version}</version>
</dependency>
<!-- 日志处理 -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>${slf4j.version}</version>
</dependency>
<!-- Jackson Json处理工具包 -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson.version}</version>
</dependency>
<!-- JSP相关 -->
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>${jstl.version}</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>${servlet-api.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jsp-api</artifactId>
<version>${jsp-api.version}</version>
<scope>provided</scope>
</dependency>
<!-- Apache工具组件 -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>${commons-lang3.version}</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-io</artifactId>
<version>${commons-io.version}</version>
</dependency>
<dependency>
<groupId>commons-net</groupId>
<artifactId>commons-net</artifactId>
<version>${commons-net.version}</version>
</dependency>
<!-- 文件上传组件 -->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>${commons-fileupload.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<!-- 依赖管理 -->
<dependencies>
<!-- 单元测试 -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
<!-- Spring -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jms</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
</dependency>
<!-- Mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
</dependency>
<!-- MySql -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!-- 连接池 -->
<dependency>
<groupId>c3p0</groupId>
<artifactId>c3p0</artifactId>
</dependency>
<!-- 日志处理 -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</dependency>
<!-- Jackson Json处理工具包 -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<!-- JSP相关 -->
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jsp-api</artifactId>
</dependency>
<!-- Apache工具组件 -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-io</artifactId>
</dependency>
<dependency>
<groupId>commons-net</groupId>
<artifactId>commons-net</artifactId>
</dependency>
<!-- 文件上传组件 -->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
</dependency>
</dependencies>
<build>
<!--打包src下的xml文件-->
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
<include>**/*.tld</include>
</includes>
<filtering>false</filtering>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
<include>**/*.tld</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
<plugins>
<!-- <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
-->
<!--tomcat7:run-->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<path>/hello</path>
<port>8081</port>
</configuration>
</plugin>
</plugins>
</build>
<modules>
<module>ssm-dao</module>
<module>ssm-service</module>
<module>ssm-web</module>
</modules>
</project>
以上是关于Mevan的主要内容,如果未能解决你的问题,请参考以下文章