安装tomcat和jdk
[root@localhost /]# mkdir data
[root@localhost /]# cd data
[root@localhost data]# mkdir tomcat
[root@localhost data]# mkdir java
[root@localhost data]# cd tomcat
#上传并解压tomcat
[root@localhost tomcat]# apache-tomcat-8.5.43.tar.gz
[root@localhost tomcat]# tar -zxvf apache-tomcat-8.5.43.tar.gz
[root@localhost tomcat]# mv apache-tomcat-8.5.43 tomcat
#安装jdk
[root@solr1 tomcat]# cd /data/java
#上传jdk安装包,并安装
[root@localhost java]# jdk-8u141-linux-x64.tar.gz
[root@localhost java]# tar -zxvf jdk-8u141-linux-x64.tar.gz
#修改环境变量
[root@localhost java]# vi /etc/profile
[root@localhost java]# source /etc/profile
>注:此处tomcat服务器的版本必须是8.x(版本8即以上),否则热部署时,会出现错误。
修改tomcat的后台管理,添加权限
[root@localhost java]# cd /data/tomcat/tomcat
[root@localhost tomcat]# cd conf
[root@localhost conf]# vi tomcat-users.xml
#追加如下内容
#给用户tomcat manager-gui,manager-script权限
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="admin-gui"/>
<user username="tomcat" password="tomcat" roles="manager-gui,manager-script,admin-gui"/>
[root@localhost conf]# cd ../tomcat/webapps/manager/META-INF/
[root@localhost META-INF]# vi context.xml
<!-- 注释掉下面内容 -->
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
<!-- 添加下面内容,允许非本机IP访问 -->
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" />
后台管理
#启动tomcat
[root@localhost conf]# cd ../bin
[root@localhost bin]# ./startup.sh
访问tomcat后台管理页面
192.168.163.129:8080/manager
登录tomcat后台的页面
springboot项目的处理
修改springboot的启动类,让启动类继承"SpringBootServletInitializer"类,并且重写"configure"方法,这是为了在服务器上指明启动类的位置。
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.support.SpringBootServletInitializer;
import org.springframework.cache.annotation.EnableCaching;
//springboot的启动类
@SpringBootApplication(scanBasePackages="com.my.ctt")
@MapperScan("com.my.ctt.mapper")
@EnableCaching
public class SpringApplications extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
// 注意这里要指向原先用main方法执行的Application启动类
return builder.sources(SpringApplications.class);
}
public static void main(String[] args) {
SpringApplication.run(SpringApplications.class, args);
}
}
使用tomcat7插件进行热部署
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<!--fork : 如果没有该项配置,这个devtools不会起作用,即应用不会restart -->
<fork>true</fork>
<!--支持静态文件热部署 -->
<addResources>true</addResources>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<configuration>
<port>8080</port>
<url>http://192.168.163.128:8080/manager/text</url>
<username>tomcat</username>
<password>tomcat</password>
<!-- 应用的部署位置,CTT就表示发布到tomcat服务器上的项目名称 -->
<path>/CTT</path>
<update>true</update>
</configuration>
</plugin>
</plugins>
</build>
部署命令
初次部署可以使用命令 :tomcat7:deploy
如果已经部署过使用命令: tomcat7:redeploy
部署跳过测试使用命令:tomcat7:redeploy -DskipTests
注:最常用的命令是:tomcat7:redeploy