Maven详解(七)------ 创建Web工程以及插件原理

1、什么是 Maven 插件?

  上一篇博客我们讲了 Maven 的生命周期,我们知道 Maven 的核心是生命周期,生命周期指定了 Maven 命令执行的流程顺序。但是真正实现流程的工程是由插件来完成的。

  我们也可以说 Maven 是一个执行插件的框架,每一个任务实际上都是有插件来完成。进一步说每个任务对应了一个插件目标(goal),每个插件会有一个或者多个目标,例如maven-compiler-plugin的compile目标用来编译位于src/main/java/目录下的主源码,testCompile目标用来编译位于src/test/java/目录下的测试源码。

2、配置编译插件

  一般我们创建一个 Maven 工程,就算指定了 JDK 的版本,但是你执行 update project 操作,一般 Maven 工程会自动恢复到默认的 JDK 版本,有可能是1.4,有可能是1.5(和 Maven 版本有关)。

  那么我们如何指定其 JDK 版本呢?在 pom.xml 中添加如下代码:

<build>
	<plugins>
		<!-- 编译插件,指定 JDK 的版本为1.7 -->
		<plugin>
			<groupId>org.apache.maven.plugins</groupId>
			<artifactId>maven-compiler-plugin</artifactId>
			<configuration>
				<source>1.7</source>
  				<target>1.7</target>
  				<encoding>UTF-8</encoding>
			</configuration>
		</plugin>
	</plugins>
</build>

  下面我们来添加一个 tomcat 插件,首先我们要知道如何创建 Maven Web 工程。

3、创建 Maven Web 工程

  第一步:New maven project,注意打包方式为 war

  第二步:右击项目名,选择 properties,选择Project Facets

  第三步:将 Dynamic Web Module 取消,点击 Apply

  第四部:将 Dynamic Web Module 重新勾选,点击 下方生成的超链接

  第五步:点击超链接,修改目录结构,然后点击 OK,创建 Maven Web 工程完成

   创建的 Web 工程目录结构如下:

 4、添加 tomcat 插件

   我们在上面创建的 web 工程,可以输入  tomcat:run 来使用默认的 tomcat 插件去启动 web 工程,但是默认的插件版本有点低,我们可以手动添加插件。

<build>
	<plugins>
		<!--配置tomcat 插件  -->
	<plugin>
		<groupId>org.apache.tomcat.maven</groupId>
		<artifactId>tomcat7-maven-plugin</artifactId>
		<configuration>
			<port>8080</port><!--端口号  -->
			<path>/</path>
		</configuration>
	</plugin>
</plugins>

  执行命令是输入:tomcat7:run

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏pangguoming

卸载CentOS7-x64自带的OpenJDK并安装Sun的JDK7的方法

    java version "1.6.0"    OpenJDK Runtime Environment (build 1.6.0-b09)    Ope...

1025
来自专栏技术博文

linux scp 命令

scp 命令 scp 命令 意思是 secure copy 即安全拷贝,可以把它看做是 cp 命令的高级版,可以跨主机拷贝。 经常用来在局域网内不同主机之间分享...

2474
来自专栏Java Edge

SpringCloud微服务实战(六)-统一配置中心1 统一配置中心概述2 Config Server

1052
来自专栏互联网杂技

laravel—用Migration的操作数据库

当然可以手动创建表; 据说Migration相当于是mysql的git工具,而且非常好用; 创建: php artisan make:migration cre...

3528
来自专栏程序员的碎碎念

git解决冲突与merge

git上传代码跟其他项目成员上传出现冲突: 我在这边修改了文件a,同事也修改了文件a。同事比我先提交到仓库中,那么我pull代码时就会报错: ? 而,我...

2703
来自专栏赵俊的Java专栏

记一次 IDEA 更新 Maven Index 的问题

由于 maven 默认的中央仓库的速度不是很理想, 所以换成了阿里云的镜像, 但使用后发现, 无法正常更新索引了, Maven 的索引功能可以让 IDEA 自动...

941
来自专栏葡萄城控件技术团队

LeadTools Android 入门教学——运行第一个Android Demo

LeadTools 有很多Windows平台下的Demo,非常全面,但是目前开发手机应用的趋势也越来越明显,LeadTools也给大家提供了10个Android...

1655
来自专栏码农笔录

docker自动化部署实战

1424
来自专栏软件开发 -- 分享 互助 成长

Android开发环境的搭建

前言: 作为一个Android开发的新手,光开发环境就差点搭建了一天,最后发现自己走了很多弯路,在此写出希望能够帮助想入门的朋友。先说一下,开发Android ...

1815
来自专栏云计算教程系列

Docker入门教程

Docker是一个部署和管理容器化应用程序的平台。由于容器的灵活性,容器在开发人员,管理员和开发人员工程师中很受欢迎。

1151

扫码关注云+社区