Java Web project with Maven

Hujiawei Bujidao


     

Java Web project with Maven


最近需要构建一个Java web项目,然后做文本分析和挖掘,于是又体验了下Maven构建Java Web项目的快感。

毕业需求是第一驱动力啊!毕业之后一定远离学术圈!

本教程的开发需求很简单,就是搭建一个Java Web项目,并且能够使用Maven将项目热部署到服务器端即可。

1.配置服务器端Tomcat的conf/tomcat-users.xml文件,注意要分配manager-script的权限,本教程中Tomcat版本是6.0。

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

2.在本地的{USER_HOME}/.m2/settings.xml文件中插入一个server的配置,其中的id可以随便给定,账号密码是服务器端Tomcat的用户的账号密码。

<servers>
     <server>
       <id>tomcat6</id>
       <username>admin</username>
       <password>admin</password>
     </server>
</servers>

3.在本地使用Maven新建一个Java Web项目,其中的参数可以自行配置

mvn archetype:generate -DgroupId=edukb.org -DartifactId=annomatic -DarchetypeArtifactId=maven-archetype-webapp

4.IDE的话这里使用IntelliJ,打开IntelliJ之后选择File -> Open...,然后选中刚才目录中的pom.xml文件即可

5.项目打开之后,修改pom.xml文件,特别注意下tomcat6-maven-plugin插件的配置即可

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

    <modelVersion>4.0.0</modelVersion>

    <groupId>edukb.org</groupId>
    <artifactId>annomatic</artifactId>
    <packaging>war</packaging>
    <version>1.0</version>

    <name>annomatic</name>
    <url>http://edukb.org</url>
    <description>For automatic annotations.</description>

    <dependencies>

        <!-- java web servlet+jsp -->
        <dependency>
            <groupId>org.apache.tomcat</groupId>
            <artifactId>servlet-api</artifactId>
            <version>6.0.29</version>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>org.apache.tomcat</groupId>
            <artifactId>jsp-api</artifactId>
            <version>6.0.29</version>
            <scope>provided</scope>
        </dependency>

    </dependencies>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <build>
        <finalName>annomatic</finalName>
        <plugins>
            <!-- 热部署到Tomcat6服务器上 -->
            <plugin>
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat6-maven-plugin</artifactId>
                <version>2.2</version>
                <configuration>
                    <path>/annomatic</path>
                    <url>http://{host}:{port}/manager/</url>
                    <server>tomcat6</server>
                    <username>admin</username>
                    <password>admin</password>
                    <update>true</update>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

6.在终端运行mvn tomcat6:deploy即可将项目部署到服务器端,如果已经部署过了就执行mvn tomcat6:redeploy更新

注意事项:如果使用的是Tomcat7,那么使用tomcat7-maven-plugin插件,并且url配置为http://{host}:{port}/manager/text

参考网址: 1.开发过程使用Tomcat Maven插件持续快捷部署Web项目 2.maven+tomcat6-maven-plugin实现热部署及调试 3.使用Maven自动部署Java Web项目到Tomcat问题小记 4.使用Maven创建Web应用程序项目

OK,就是这样啦,hope it helps!

Hujiawei is a mobile developer Guangdong, China http://javayhu.me/ 本博客所有文章均为原创,请勿随意转载,如需转载请联系我 (hujiawei090807 AT gmail.com) 我在小专栏有个移动开发技术专栏,不定期分享移动开发的核心技术,总结移动开发的实战经验
所有文章皆为原创,内容制作精良,保证干货满满,欢迎订阅 (https://xiaozhuanlan.com/u/javayhu)
>>> 我最近在Android面试指南小专栏里面写了一篇稿子 [Android面试——算法面试心得] ,欢迎阅读!<<<
下面的二维码是我个人维护的微信公众号“潇涧技术专栏”,会不定期分享移动开发的核心技术,欢迎关注!