zoukankan      html  css  js  c++  java
  • maven2 + tomcat6 + eclipse集成配置

    转载:http://wenku.baidu.com/view/d64147c676eeaeaad1f330d4.html?re=view

    /*
    maven2 + tomcat6 + eclipse集成配置
    maven的配置
    环境变量M2_HOME = maven主目录
    环境变量path = maven主目录/bin
    apache-maven/conf/setting.xml文件
    1、新建maven本地仓库文件夹apache-maven2-repo,并加入setting.xml,指定本地仓库位置
    <localRepository>e://apache-maven2-repo</localRepository>
    2、添加<server>,注意<id>,用户密码值对应Tomcatconf下的tomcat-users.xml的指定配置
    <server>
    <id>tomcat6</id>
    <username>admin</username>
    <password>admin</password>
    </server>
    eclipse中的maven配置
    1、在window-preferences-maven下
    -installtions,add一个外部maven,就是指定自己装的maven目录,选上,不用eclipse内置的maven
    插图1
    2、-user setting,指定使用刚配置的setting.xml文件
    tomcat的配置
    tomcat/conf/tomcat-users.xml文件
    1、添加<role>,<user>
    <role rolename="manager-gui"/> <!-- 注意rolename的取值,tomcat6有规定4个rolename值-->
    <user username="admin" password="admin" roles="manager-gui"/>
    附加rolename信息
    manager-gui - allows access to the HTML GUI and the status pages
    manager-script - allows access to the text interface and the status pages
    manager-jmx - allows access to the JMX proxy and the status pages
    manager-status - allows access to the status pages only
    tomcat/conf/server.xml文件
    1、修改<Connector>,启动端口8088
    <Connector port="8088" protocol="HTTP/1.1"
    connectionTimeout="20000"
    redirectPort="8443"
    URIEncoding= "UTF-8"/>
    新建一个Java Maven项目
    1、new-project-maven project
    选择all catalogs,选择org.apache.maven.archetypes/ maven-archetype-webapp
    插图3
    GroupId:com.maven.test
    ArtifaceId:mymaven
    package:com.maven.test.mymaven
    插图4
    新Java Maven项目创建好。
    2、pom.xml的配置添加<plugins>,详细配置如下
    <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>com.maven.test</groupId>
    <artifactId>mymaven</artifactId>
    <packaging>war</packaging>
    <version>0.0.1-SNAPSHOT</version>
    <name>mymaven Maven Webapp</name>
    <url>http://maven.apache.org</url>
    <dependencies>
    <dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>3.8.1</version>
    <scope>test</scope>
    </dependency>
    </dependencies>
    <build>
    <finalName>mymaven</finalName>
    <plugins>
    <!-- 第一点-->
    <plugin>
    <!-- 第二点-->
    <groupId>org.apache.tomcat.maven</groupId>
    <artifactId>tomcat6-maven-plugin</artifactId>
    <version>2.0</version>
    <configuration>
    <update>true</update>
    <charset>utf-8</charset>
    <!-- 第三点-->
    <url>http://localhost:8088/manager/text</url>
    <!-- 第四点-->
    <server>tomcat6</server>
    <port>8088</port>
    <path>/mymaven</path>
    </configuration>
    </plugin>
    </plugins>
    </build>
    </project>
    第一点:
    pom.xml文件是maven的核心(pom:Project Object Model),
    在该文件中可以加载任何项目所需的插件。
    添加tomcat-maven中间插件,以启动外部的Tomcat6服务器,
    此插件可根据以下<groupId>/<artifactId>/<version>
    指定配置,系统会自动将项目所需的插件jar包文件,
    从maven repository center下载下来(下载到之前指定的本地apache-maven2-repo仓库中)。
    系统会自动将这些项目所需的插件从 maven repository center 下载下来。
    因为要希望把项目部署到外部 tomcat下面,
    所以此处需要加入 tomcat-maven 插件,以及希望启动的tomcat配置<configuration>标签。
    第二点:
    tomcat-maven插件,可上官网参考如何写groupId and Mojo name
    http://tomcat.apache.org/maven-plugin-2.0/
    第三点:
    官网解释:Use http://localhost:8080/manager/text rather than the default tomcat6 url
    maven要利用tomcat manager,这个大致意思是指定tomcat manager的地址
    若/manager/text改为/manager/html,
    maven building时的信息会打印会输出一个文本格式的403网页,原因不明。
    第四点:
    跟setting.xml的<server>指定的<id>同名:tomcat6
    3、根据pom.xml进行building
    1)pom.xml右键run as -> Maven clean,开始build前清理一下
    2)手工启动tomcat,双击运行tomcat/bin/startup.bat
    3)pom.xml右键run as -> Maven build..,在Goals填入package tomcat6:deploy,再运行
    此时项目target文件夹里生成mymaven.war,项目发布成功
    插图4
    4)手工关闭tomcat,双击运行tomcat/bin/shutdown.bat
    5)再通过tomcat-maven插件重启tomcat,pom.xml右键run as -> Maven build..,在Goals填入tomcat6:run
    6)浏览器键入http://localhost:8088/mymaven,看到index.jsp页面代表Java Maven项目实例成功了。
    初次玩maven会碰到的构建错误
    1、关于tomcat无法启动,提示socket bind failed端口已被占用的情况:
    解决:可以打开cmd输入netstat -ano 查找端口被占用的PID,
    然后到任务管理器中杀掉PID对应的进程,如无意外是直接杀掉javaw.exe即可解决
    2、tomcat:deploy时的错误:
    [INFO]
    ---------------------------------------------------------------------
    [INFO] BUILD FAILURE
    [INFO]
    ---------------------------------------------------------------------
    [INFO] Total time: 2.797s
    [INFO] Finished at: Wed Mar 13 11:24:37 CST 2013
    [INFO] Final Memory: 6M/12M
    [INFO]
    ---------------------------------------------------------------------
    [ERROR] Failed to execute goal
    org.apache.maven.lifecycle.LifecycleExecutionException: Failed to
    execute goal org.codehaus.mojo:tomcat-maven-plugin:1.1:deploy
    (default-cli) on project MyFirstMaven: Cannot invoke Tomcat manager
    解决:注意指定的<url>是否正确,确定是否已经在tomcat-users.xml中正确添加了<role>/<user>
    3、为什么启动的是8080端口的tomcat,而不是我们所需要的8088端口的tomcat:
    解决:因为如果使用 tomcat:deploy 或 tomcat:run,maven 会自动调用的 maven 自带的
    tomcat-6.0.29 插件,而不是我们所需的外部设置的 tomcat-6.0.36,那该怎么办呢?前面
    在maven-setting.xml设置的时候,重点强调过,有一个配置tomcat的地方, <id>tomcat6<id>
    是需要记住的,后面会用到。就是这个时候用到了,尝试在 maven build的时候,在 goals
    里输入tomcat6:deploy或tomcat6:run,ok问题解决啦,外部的 tomcat6.0.36就被启动起
    来了。
    */

  • 相关阅读:
    阶段性总结(PHP-JSON)
    阶段性总结(PHP-Array函数)
    JavaScript异步加载的三种方式——async和defer、动态创建script
    event.target 和 event.currentTarget 的区别
    面试题:常用的http状态码
    JS变量重复声明以及忽略var 声明的问题及其背后的原理
    line-height:1.5和line-height:150%的区别
    Web前端性能优化——如何提高页面加载速度
    Promise和setTimeout执行顺序 面试题
    过目不忘JS正则表达式
  • 原文地址:https://www.cnblogs.com/wenlj/p/4646470.html
Copyright © 2011-2022 走看看