1.前言
web项目一般有3种环境:dev,test,online;
test和online大都部署在Linux服务器上,所以对于java开发人员来说,需要了解Linux的基本操作以及对于开发项目,如何从本地部署web项目至服务器上也是很重要的。
- 服务器中环境准备: jdk和Tomcat
- 对于数据库来说,一般大型项目数据库都是单独部署在不同的服务器上,所以不需要单独配置数据库环境
2.maven自动部署web项目至远程Tomcat
- 1.配置服务器Tomcat访问权限:服务器中Tomcat根目录 conf/tomcat-user.xml,在标签中添加如下,打开Tomcat中的manager功能。如下图所示,配置好即可在本地通过http://服务器ip:8080/manager访问manager(需要输入账户密码)。Tomcat的webApp下默认有docs examples host-manager manager等几个web项目。
<role rolename="tomcat"/>
<role rolename="manager"/>
<role rolename="manager-gui"/>
<role rolename="manager-script" />
<role rolename="admin-gui"/>
<user username="admin" password="admin" roles="tomcat,manager,manager-script,admin-gui" />
<user username="tomcat" password="tomcat" roles="manager-gui" />
- 2.本地web项目的pom.xml中添加配置,如下,pathA为Tomcat服务器中的部署路径,username和password是上面user.xml配置的账户密码。
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>${tomcat.maven.version}</version>
<configuration>
<!-- http port -->
<url>http://服务器ip:8080/manager/text</url>
<path>/pathA</path>
<username>tomcat</username>
<password>tomcat</password>
</configuration>
</plugin>
<plugin>
- 3.本地在项目根目录下,使用maven打包一键部署:-DskipTests 跳过测试 -DAPP_ENV=dev 开发环境;
- 4.运行时需保证远程Tomcat服务器在启动状态
第一次部署
mvn -DskipTests -DAPP_ENV=dev tomcat7:redeploy
再次部署
mvn -DskipTests -DAPP_ENV=dev tomcat7:redeploy
-- 也可以使用idea界面maven build。
- 5.部署完成
实时查看Tomcat运行日志:warName war包名
tail -f /data/logs/warName.log
3.idea调试远程Tomcat
- 为什么要这么做?本地的测试通过,放到test环境就出问题了,或者只能在test环境测试的流程。由于test是在虚机上的,仅通过查看test环境log无法解决,且无法debug代码。
- 通过本地idea连接test环境的Tomcat,直接debug。
步骤待更。
n.总结
需要了解的部分包括:
- 1.maven打包项目
- 2.Tomcat的作用
- 3.Linux的基本使用