Maven的简单记录一

一 下载安装

1 根据jdk版本下载对应的maven版本,然后解压到没有中文目录的路径

2 配置maven的环境变量

3 验证,dos窗口输入 mvn -v

4 如果要修改本地仓库位置修改settings.xml

5 和myeclipse的整合

 

 

二 新建

新建完需要等待一会儿才能完成

处理红色叉号

手动在webapp文件夹下创建一个WEB-INF文件夹,在里面放一个web.xml文件

 

 

常用命令比如:mvn clean

Clean   清理编译的文件        Compile 编译了主目录的文件

 

Test  编译并运行了test目录的代码            Package 打包                 Install 就是把项目发布到本地仓库

 

Tomcat:run  一键启动

 

Default生命周期

Compile   test  package  install  deploy

 

不同的生命周期的命令可以同时执行

Mvn clean package

 

三 具体细节

 

1 添加依赖

 

 

可以看到 pom.xml文件中多出代码

同样的方式添加servlet-api.jar和jsp-api.jar 注意选择scope为provided

2 依赖范围

Compile   比如:struts2-core

编译(compile)时需要 测试时需要,,运行时需要,打包时需要

​​​​​​​Provided  比如:jsp-api.jar   servlet-api.jar

编译(compile)时需要,测试(test)时也需要 ,运行时不需要,打包时不需要,因为tomcat自身会有这些jar所以可能会有冲突。

​​​​​​​Runtime   数据库驱动包

编译时不需要,测试时需要,,运行时需要,打包时需要,这个有点难理解,实际上数据库驱动包没有的时候,我们编译不会出错。只有真正连接的时候需要

​​​​​​​Test  junit.jar

编译时不需要,测试时需要,运行时不需要,打包也不需要

 

 

四  启动

 

手动部署:

 对着项目右键,run as -----> Maven install 就会在本地生成war包,找到相关目录:把这个包复制到我们本机安装的tomcat的webapp路径下:启动tomcat即可:访问路径一定要和war包的名字一致。

 

 热加载:服务器会监听 class 文件改变,包括web-inf/class,wen-inf/lib,web-inf/web.xml等文件,若发生更改,则局部进行加载,不清空session ,不释放内存。开发中用的多,但是要考虑内存溢出的情况。

      热部署: 整个项目从新部署,包括你从新打上.war 文件。 会清空session ,释放内存。项目打包的时候用的多。

tomcat热部署:

这种方式我们没有像以前一样先将项目移到tomcat在启动,而是直接启动tomcat然后用maven来开启访问,实际上就是maven来操作tomcat。

原文连接:

https://www.tpyyes.com/a/javaweb/2018/0610/629.html

什么是tomcat热部署呢?先搞清楚概念问题。

所谓的tomcat热部署,就是在不重启tomcat服务器的前提下,将自己的项目部署到tomcat服务器中,这种方式是非常方便的,也称之为“开发即用”,热部署分为手动热部署自动热部署。

手动热部署:就是不重启tomcat的情况下,在tomcat自带的管理界面,例如“http://ip:8080/manager/html/”里面,直接选择需要部署的war包,然后点击“deploy”部署按钮即可将项目部署到远程服务器中,如图所示:

20180609234800.jpg

自动部署:就是在不重启tomcat的情况下,结合maven的pom.xml配置,在里面直接配置tomcat插件,并设置好远程服务器manager管理界面的登录用户名与密码,当我们在eclipse开发工具中运行“tomcat7:deploy”或“tomcat7:redeploy”命令时,就会将我们的项目自动部署到远程服务器上。

20180609235350.jpg

了解了什么是tomcat服务器热部署之后,我们再来学习如何实现tomcat热部署吧!

步骤一:我们都知道tomcat服务器是解压之后就可以运行的,因此要想实现tomcat热部署,就要开启tomcat的manager管理功能,正常情况下我们这样访问“http://ip:8080/manager/html/”管理界面的时候会报403错误,也就是无权限访问,因此需要配置tomcat管理界面的访问权限。

方法:

修改tomcat的conf下的tomcat-users.xml文件,在<tomcat-users></tomcat-users>标签之间添加如下配置,表示允许用户名和密码为“admin”的用户登录管理界面(密码自己设置):

<role rolename="manager-gui" />
<role rolename="manager-script" />
<user username="admin" password="admin" roles="manager-gui, manager-script"/>

重启tomcat之后如果浏览器和服务器处于同一台机器上,你访问“http://ip:8080/manager/html/”管理界面是可以的,但是如果你的浏览器与服务器不是同一台设备,就需要在“/conf/Catalina/localhost”下添加一个“manager.xml”文件,并添加如下代码:

<Context privileged="true" antiResourceLocking="false" 
         docBase="${catalina.home}/webapps/manager">
    <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" />
</Context>

它表示允许任何客户端访问管理界面

步骤二:在eclipse的pom.xml文件上添加maven配置文件,添加tomcat,并设置远程的登录用户名和密码,配置如下:

<build>
	<finalName>english</finalName>
	<plugins>
		<plugin>
			<groupId>org.apache.tomcat.maven</groupId>
			<artifactId>tomcat7-maven-plugin</artifactId>
			<version>2.2</version>
			<configuration>
				<port>8080</port>
				<path>/</path>
				<uriEncoding>UTF-8</uriEncoding>
				<url>http://123.207.218.210:8080/manager/text</url>
				<username>admin</username>
				<password>admin</password>
			</configuration>
		</plugin>
	</plugins>
</build>

此时我们在eclipse上如上图那样运行maven命令,就可以直接将我们的项目热部署到远程服务器上,就不用重启tomcat了,也就是“开发即用”!

webapps下的项目正在运行,直接把开发的新版本发布到正在运行的Tomcat下(不能关闭Tomcat再发布新版本)

    开发者本地将代码通过Git push到服务器端,服务器自动编译-打包-发布等等;也就是说发布到tomcat中后,不需要重启tomcat。

原文连接:

http://8e351a5c.wiz03.com/share/s/2edhFs04v4Ek2hJTUO1rWuJG3SfW_90tN4ny2aaq3i1ewbGL

一;热部署前准备:

1 配置Tomcat登录的用户名和密码(热部署需要用户名和密码进行远程发布)

    1.1 修改user配置文件一是为了管理员进入tomcat管理页面并提高其安全性,二是为了在maven设置正确的用户名;

        C:\Java\apache-tomcat-7.0.79\conf\tomcat-users.xml

    1.2 找到tomcat-user配置文件:

      <!-- 配置Tomcat登录的用户名和密码 -->

<role rolename="manager-gui"/>

<role rolename="manager-script"/>

<role rolename="admin"/>

<role rolename="manager"/>

<user username="tomcat" password="123456" roles="manager-gui,manager-script,admin,manager"/>

2 重启Tomcat,访问http://localhost:8080

   进入tomcat服务器根目录,点击“manager app”输入用户名和密码,成功进入管理页面,说明第一步配置成功。

  

    注:端口号改为80 可以默认不显示;访问项目应该隐藏项目名称;

二;热部署

Maven的Server的配置

    在Maven的安装路径找到conf目录下的setting.xml文件("E:\software\apache-maven-3.5.0\conf"),在<servers>节点中添加tomcat7下配置的用户信息

    

<server>
    <id>tomcat</id>
    <username>admin</username>
    <password>password</password>

</server>

注:如果在pom.xml中没有配置用户名和密码,则使用setting里的配置,如果有的话,就是用pom里的配置(就近原则)

配置完记得要Maven-->Update projiect(刷新)

pom.xml中添加tomcat插件

    ① 可以在pom.xml中右键-->Maven-->Add Plugin-->tomcat 自动添加插件

   

    ② 可以手动配置插件和Tomcat的访问路径

<build>
<finalName>babasport</finalName>
<plugins>
    <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>2.0.2</version>
        <!-- 本地jdk版本 -->
        <configuration>
            <source>1.7</source>
            <target>1.7</target>
        </configuration>
    </plugin> 
    <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.2</version>
        
        <!-- 配置tomcat的访问 -->
        <configuration>
            <!-- 访问路径 -->
            <url>http://localhost:8080/manager/text</url>
            <!-- 项目发布到根目录,覆盖ROOT,URL访问可以省略项目名称 -->
            <!-- <path>/</path> -->
            <path>/babasport</path>
            <server>tomcat</server>  <!-- 此处的名字必须和setting.xml中配置的ID一致-->
            <username>tomcat</username>
            <password>123456</password>
        </configuration>
    </plugin>
</plugins>
</build>
 

3 最后来验证一下:启动tomcat服务器,保证里面没有发布任何项目

3.1 如果是eclipse,直接右键项目---run as ---maven bulid...输入“tomcat7:deploy”(二次发布以后输入"tomcat7:redeploy")

3.2 如果使用的是命令行,直接输入“mvn tomcat7:redeploy”

测试通过,输入地址可以正常的访问!

​​​​​​​

 

猜你喜欢

转载自blog.csdn.net/weixin_42323655/article/details/81171048
今日推荐