今天想尝试下MavenPOM构建工具,对比下之前使用的ant,发现Maven项目跑起来还是不容易的!!
第一步:因为要使用Maven来管理项目,所以需要下载Maven
下载链接为:https://maven.apache.org/download.cgi
在这里对于一般用户来说选择二进制的下载文件就好,windows操作系统选择zip acrhive,
下载好了之后,选择路径解压,然后就是配置环境变量了,这个比较简单,将bin路径复制到系统变量的path下,保存就可以了。
然后alt+R进入命令行模式,输入cmd进入DOS窗口,输入mvn -v,如果配好了环境变量,会出现下图所示
到这里Maven就算是大功告成了,接下来就是将Maven引入到Myeclipse中,开始操作!
第一步:进入Myeclipse,点击Window,在下拉框中选择Preferences,在搜索框中输入Maven,如图所示
然后点击Installations
默认情况下,这里是没有Maven安装源的,这时候点击Add
在home后面的Directory中选择Maven安装路径然后下面name会自动写入,点击完成,就可以了!
现在已经将Maven和Myeclipse连接起来了,接下来我们在本地新建一个repository(主要是用来存储本地项目和从中心服务器repository上拉下来的项目),不用默认的.m2中的repository,原因很简单,因为.m2在C盘,尽量避免将项目放在C盘(避免重装的麻烦), 弄好了之后,我们双击user settings,进行本地仓库设置
上面全局设置不用管,将下面的User Setting 中的路径改成Maven目录下的setting。xml,同样下面本地仓库会自动匹配,不需要手动输入!
到这一步的时候,基本上所有准备工作都弄好了,接下来开始创建Maven项目。
选择Maven Project ,点击Next
到这一步将Catalog的all Catalog修改为Internal原因就是用后面策略跑的快点!
下面选择WebApp,因为我们创建的是web项目,如果创建java项目,就选择用quickstart
这样,一个Maven项目就创建完成了,目录结构如下:
:)这就有点尴尬了,怎么刚创建就出问题了哈!!
既然有问题那就要解决,经过排查,是index.jsp报错,提示找不到依赖包,进入pom.xml
在dependencies结点下再加入一个dependency结点,
<dependency>
<groupId>javax</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
</dependency>
添加完成之后ctrl+s保存一下,就会发现项目不报错了!
运行maven项目有两种方式,一种叫热部署,一种就是本地运行,先说下后面这一种,因为比较简单
本地运行:
在pom.xml上右键,选择run as,选择 maven install 选项,于是便会创建war包,然后将生成的war包放在tomcat 的 webapps下面再将tomcat跑起来就可以运行了!
热部署:
也就是通过mavedn和tomcatd的插件直接进行运行
修改pom.xml,代码,加入插件代码,
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<configuration>
<url>http://localhost:8086/manager/text</url> <!-- tomcat7部署管理路径 -->
<username>admin</username> <!-- tomcat的管理员账号 -->
<password>password</password>
<port>8086</port>
<path>/Lan</path> <!-- 部署路径 -->
<charset>UTF-8</charset>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
然后进行热部署,
Goals命令为:tomcat7:redeploy
当控制台看到上图所示内容,表明运行成功,可以访问!!!
切记,在热部署之前一定要将相对应的tomcat打开,
<url>http://localhost:8086/manager/text</url>
也就是这个url在搜索栏里面可以显示内容
可以通过Web application Manager 来访问相对应的Maven项目,至此,maven项目创建问题解决!!
参考资料:https://blog.csdn.net/u011679955/article/details/52843534