`
noside
  • 浏览: 5492 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Maven学习笔记(三.用于Web项目中)

 
阅读更多

看了一段时间网上的教程,也会用了一些功能,于是尝试把Maven应用于我自己的Web项目中。

 

其实把Maven用在web项目中非常简单,Maven本来就有这样的功能(site)。

 

新建Maven项目,只需设置pom.xml中的packaging为war,增加相关的依赖,这里有个sample

 

<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>cn.noside</groupId>
  <artifactId>nportal</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>war</packaging>
  <description>	</description>
  <properties>
	<spring.version>3.0.5.RELEASE</spring.version>
	<log4j.version>1.2.16</log4j.version>	
  </properties>
  <dependencies>
		<dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-orm</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-core</artifactId>
            <version>${spring.version}</version>
            <exclusions>
                <exclusion>
                    <groupId>commons-logging</groupId>
                    <artifactId>commons-logging</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-test</artifactId>
            <version>${spring.version}</version>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>commons-logging</groupId>
                    <artifactId>commons-logging</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>${spring.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-aop</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-tx</artifactId>
            <version>${spring.version}</version>
        </dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-context-support</artifactId>
			<version>${spring.version}</version>
			<exclusions>
				<exclusion>
					<groupId>quartz</groupId>
					<artifactId>quartz</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>${spring.version}</version>
            <exclusions>
                <exclusion>
                    <groupId>commons-logging</groupId>
                    <artifactId>commons-logging</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>${spring.version}</version>
            <exclusions>
                <exclusion>
                    <groupId>commons-logging</groupId>
                    <artifactId>commons-logging</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
        	<groupId>log4j</groupId>
        	<artifactId>log4j</artifactId>
        	<version>${log4j.version}</version>
        </dependency>
        <dependency>  
		    <groupId>commons-logging</groupId>  
		    <artifactId>commons-logging</artifactId>  
		    <version>1.0.4</version>  
		    <exclusions>  
		        <exclusion>  
		            <groupId>javax.servlet</groupId>  
		            <artifactId>servlet-api</artifactId>  
		        </exclusion>  
		    </exclusions>  
		</dependency>
        <dependency>  
		    <groupId>javax.servlet</groupId>  
		    <artifactId>jstl</artifactId>  
		    <version>1.2</version>
		</dependency>
        <dependency>  
		    <groupId>commons-dbcp</groupId>  
		    <artifactId>commons-dbcp</artifactId>  
		    <version>1.3</version>
		</dependency>
        <dependency>  
		    <groupId>mysql</groupId>  
		    <artifactId>mysql-connector-java</artifactId>  
		    <version>5.1.13</version>
		</dependency>
  </dependencies>
</project>

 

完成了pom.xml,需要在/{project_home}/src/main/webapp里面增加目录"WEB-INF",再在"WEB-INF"里面增加web.xml文件。到这里就完成了构建工作。

 

构建只需简单右键项目->Run as->Maven package,生成的war包回存放于target文件夹中。

 

相比于Ant,Maven实在是太简单了,因为Maven不需要自己编写说明项目源码放在什么地方,资源文件放在哪里,编译后放在哪里,Maven已经帮我们这样做了,唯一的代价就是需要依照Maven规定的项目结构(否则需要增加插件,指明源码与目标路径,这样的话相比Ant貌似没有优势)。

 

一连三篇文章,简述了我在一般项目中如何使用Maven,但是Maven的学习不仅仅这么少,Maven作为一个项目管理工具,不仅仅是依赖管理与build项目而已。下面列举一些Maven需要学习的重点

1.Maven配置,包括settings的配置(大陆居然访问不到Maven主仓库……settings配置就非常重要了),包括如何建立私有仓库,项目团队如何使用仓库。

2.Maven生命周期

3.Maven管理项目模块,有时我们把一个项目分成core、web、dao等几部分

4.Maven插件

5.Maven作为持续集成管理

……

 

 

 

分享到:
评论
2 楼 noside 2011-12-21  
mlzboy 写道
怎么生成一个大的war包或是jar包呢?,我也正学习,默认好像生成的war包和jar包,没有把其它包也包含进去啊,

默认的packaging=war已经把其他jar包含进去了
1 楼 mlzboy 2011-12-18  
怎么生成一个大的war包或是jar包呢?,我也正学习,默认好像生成的war包和jar包,没有把其它包也包含进去啊,

相关推荐

    maven学习笔记maven学习笔记

    maven学习笔记maven学习笔记maven学习笔记

    Maven学习笔记大全.docx

    由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发文时使用 Maven,而且公司项目采用 Maven 的比例在...

    新建Maven项目时出错:org.apache.maven.archiver.MavenArchiver.getManifest

    org.apache.maven.archiver.MavenArchiver.getManifest(org.apache.maven.project.MavenProject, org.apache.maven.archiver.MavenArchiveConfiguration) 解决方案: 第一种方式 war项目 &lt;groupId&gt;org.apache....

    maven的本地仓库配置文件settings.xml和项目中文件pom.xml.zip

    一、Idea关联的maven本地仓库配置...三、3个可单独使用的,maven项目文件pom.xml自定义配置 pom-maven-springboot-CusConfigV1.xml pom-maven-springboot-CusConfigV2.xml pom-maven-spring-CusConfigV1不推荐使用.xml

    Maven学习笔记.zip

    maven学习笔记,包含maven插件,maven的安装,中央仓库,自定义本地仓库等安装方法。

    Maven 2 学习笔记.txt

    项目中,Java类放在src/main/java下面,而classpath资源文件放在src/main/resources下面。 /main/java /src/test/ 我们项目的测试用例放在src/test下。在这个目录下面,src/test/java存放像 使用JUnit...

    Maven 学习笔记.docx

    Maven 学习笔记

    maven学习笔记.rar

    maven学习笔记,传智博客的两天maven培训课件,简单易懂,有项目代做,快速上手maven,欢迎大家下载。

    201205_Maven学习笔记3.rar

    NULL 博文链接:https://wuzhaohuixy--com.iteye.com/blog/1860184

    201205_Maven学习笔记2.rar

    NULL 博文链接:https://wuzhaohuixy--com.iteye.com/blog/1860184

    201205_Maven学习笔记1.rar

    NULL 博文链接:https://wuzhaohuixy--com.iteye.com/blog/1860184

    apache-maven-3.8.6.zip

    apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-...

    apache-maven-3.3.9.rar

    apache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9....

    MavenWeb项目创建.pdf

    MavenWeb项目创建.pdf

    MAVEN学习笔记.md

    由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发文时使用 Maven,而且公司项目采用 Maven 的比例在...

    maven课堂笔记2.pdf

    关于如何idea和eclipse开发maven项目 关于如何idea和eclipse开发maven项目 关于如何idea和eclipse开发maven项目 关于如何idea和eclipse开发maven项目 关于如何idea和eclipse开发maven项目 关于如何idea和eclipse开发...

    在MyEclipse中使用maven构建web项目.doc

    在MyEclipse中使用maven构建web项目.doc

    Maven3.0学习文档.doc

    Maven3.0学习文档 Maven入门教程 1.1.介绍、环境配置 1.21.2.第一个Maven演示 1.5.Maven与Eclipse整合

    Maven3学习日志.doc

    Maven3学习日志.doc

Global site tag (gtag.js) - Google Analytics