IDEA社区版相对收费版少了很多功能,其中包括tomcat等web服务器的支持。网上大部分的IDEA web应用发布教程都是基于收费版的,社区版并没有这么直接的图形化工具可以运行或发布web应用。幸运的是经过实践证明可以通过tomcat7-maven-plugin这个maven插件来实现web应用的调式和发布。
准备工作
-
检查确认已经安装并配置好了如下组件
- tomcat7
- maven3
配置tomcat用户和角色
conf/tomcat-users.xml
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="manager"/>
<role rolename="manager-gui"/>
<role rolename="manager-script" />
<role rolename="admin-gui"/>
<user username="tomcat" password="tomcat" roles="tomcat,manager,manager-gui,manager-script,admin-gui" />
</tomcat-users>
保证manager页面可以正常打开:http://localhost:8080/manager
配置IDEA直接运行调式web应用
打开IDEA的调式运行配置
新建一个Maven配置
编辑配置
Name:给自己的web项目的调式运行配置起一个名字
Working directory: 选择你的要运行的web项目的路径
Command line: tomcat7:run (如果你安装的是tomcat7的话,其他版本请使用相应的命令)
引入tomcat7-maven-plugin编译插件并配置
更新pom.xml
<build>
<finalName>demo</finalName>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<port>8181</port>
<path>/testing</path>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
端口:8181
web的应用路径:/testing
运行项目
直接点击绿色的三角形或按下快捷键Shift+F10运行当前项目
如果你的IDEA运行console输出如下图所示的信息:
说明你的web应用已经正常运行起来了,在浏览器中输入地址:http://localhost:8181/testing/ 就可以访问该web的内容了@_@
用Maven打包发布web应用
配置服务器的用户名和密码
更新setttings.xml,默认路径是在个人的home目录下的.m2:~/.m2/setttings.xml
在servers节点再添加一个server节点:
这里配置的是发布到的远程服务器的用户名和密码,如果不把用户名和密码配置在settings.xml文件里就需要把服务器的用户名和密码配置在项目的pom.xml文件中,这是不安全的做法。
<servers>
<server>
<id>tomcat</id>
<username>tomcat</username>
<password>tomcat</password>
</server>
</servers>
配置发布的目标服务器
更新pom.xml
<build>
<finalName>demo</finalName>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<port>8181</port>
<path>/testing</path> <url>http://localhost:8080/manager/text</url>
<server>tomcat</server>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
增加:
url:你要发布web项目的所在的服务器的URL,发布的文件会上传到该服务器相应的<path>路径下
server:对应settings.xml文件的server
用maven命令发布web应用
cd到要发布的项目的根目录或直接打开IDEA的terminal(默认是当前项目的根目录),然后执行下面命令:
mvn clean install package tomcat7:redeploy -Dmaven.test.skip=true
-Dmaven.test.skip=true 命令是为了跳过单元测试
发布成功
如果出现如下信息,恭喜你,你的web应用发布成功了
如果一切正常的话你就可以在tomcat的webapps目录下找到刚刚发布的网站生成的文件 testing.war
用浏览器打开地址:http://localhost:8080/testing
就可以访问你刚刚发布的web项目了@~@