使用 Eclipse 的 Maven 2 插件开发一个 JEE 项目

1.新建 Maven 项目

Eclipse 的 Package Explorer 视图下右击 -> New -> Maven -> Maven Project -> Next -> Select project name and location 对话框直接点 Next -> Select an Archetype 对话框,Catalog 选择 "All Catalogs",Filter 选择 Group Id 为 "org.apache.maven.archetypes"、Artifact Id 为 "maven-archetype-quickstart"、Version 为 "1.1" 的那个,点 Next -> Enter an artifact id 对话框,Group Id 输入项目组 "mia",Artifact Id 输入 "noti-service"(最好是你的项目名),Version 输入版本号 "1.0.0",Package 输入主干包名 "com.defonds.noti",点击 Finish,新的 Maven 项目 noti-service 生成。如下图所示:

2.编辑 pom.xml

根据项目的需要,引入所依赖的包。作者的 pom.xml 示例如下:

  1. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  2. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  3. <modelVersion>4.0.0</modelVersion>
  4. <groupId>mia</groupId>
  5. <artifactId>noti-service</artifactId>
  6. <version>1.0.0</version>
  7. <packaging>jar</packaging>
  8. <name>noti-service</name>
  9. <url>http://maven.apache.org</url>
  10. <properties>
  11. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  12. <spring.version>3.1.2.RELEASE</spring.version>
  13. <httpClient.version>4.1.3</httpClient.version>
  14. </properties>
  15. <dependencies>
  16. <dependency>
  17. <groupId>junit</groupId>
  18. <artifactId>junit</artifactId>
  19. <version>3.8.1</version>
  20. <scope>test</scope>
  21. </dependency>
  22. <!-- uniform spring version and using new spring MVC annotation begin-->
  23. <dependency>
  24. <groupId>org.springframework</groupId>
  25. <artifactId>spring-core</artifactId>
  26. <version>${spring.version}</version>
  27. </dependency>
  28. <dependency>
  29. <groupId>org.springframework</groupId>
  30. <artifactId>spring-web</artifactId>
  31. <version>${spring.version}</version>
  32. </dependency>
  33. <dependency>
  34. <groupId>org.springframework</groupId>
  35. <artifactId>spring-orm</artifactId>
  36. <version>${spring.version}</version>
  37. </dependency>
  38. <dependency>
  39. <groupId>org.springframework</groupId>
  40. <artifactId>spring-context</artifactId>
  41. <version>${spring.version}</version>
  42. </dependency>
  43. <dependency>
  44. <groupId>org.springframework</groupId>
  45. <artifactId>spring-webmvc</artifactId>
  46. <version>${spring.version}</version>
  47. </dependency>
  48. <dependency>
  49. <groupId>org.springframework</groupId>
  50. <artifactId>spring-tx</artifactId>
  51. <version>${spring.version}</version>
  52. </dependency>
  53. <!-- uniform spring version and using new spring MVC annotation end-->
  54. <dependency>
  55. <groupId>org.codehaus.jackson</groupId>
  56. <artifactId>jackson-mapper-asl</artifactId>
  57. <version>1.9.2</version>
  58. </dependency>
  59. <dependency>
  60. <groupId>org.codehaus.jackson</groupId>
  61. <artifactId>jackson-core-asl</artifactId>
  62. <version>1.9.2</version>
  63. </dependency>
  64. <dependency>
  65. <groupId>log4j</groupId>
  66. <artifactId>log4j</artifactId>
  67. <version>1.2.16</version>
  68. </dependency>
  69. <dependency>
  70. <groupId>org.apache.ibatis</groupId>
  71. <artifactId>ibatis-sqlmap</artifactId>
  72. <version>2.3.4.726</version>
  73. </dependency>
  74. <dependency>
  75. <groupId>commons-lang</groupId>
  76. <artifactId>commons-lang</artifactId>
  77. <version>2.4</version>
  78. </dependency>
  79. <dependency>
  80. <groupId>commons-dbcp</groupId>
  81. <artifactId>commons-dbcp</artifactId>
  82. <version>1.2.2</version>
  83. </dependency>
  84. <dependency>
  85. <groupId>commons-exec</groupId>
  86. <artifactId>commons-exec</artifactId>
  87. <version>1.0</version>
  88. </dependency>
  89. <dependency>
  90. <groupId>mysql</groupId>
  91. <artifactId>mysql-connector-java</artifactId>
  92. <version>5.1.19</version>
  93. </dependency>
  94. <dependency>
  95. <groupId>org.slf4j</groupId>
  96. <artifactId>slf4j-api</artifactId>
  97. <version>1.6.1</version>
  98. </dependency>
  99. <dependency>
  100. <groupId>org.slf4j</groupId>
  101. <artifactId>slf4j-log4j12</artifactId>
  102. <version>1.6.1</version>
  103. </dependency>
  104. <dependency>
  105. <groupId>org.apache.httpcomponents</groupId>
  106. <artifactId>httpclient</artifactId>
  107. <version>${httpClient.version}</version>
  108. </dependency>
  109. <dependency>
  110. <groupId>org.apache.httpcomponents</groupId>
  111. <artifactId>httpcore</artifactId>
  112. <version>${httpClient.version}</version>
  113. </dependency>
  114. <dependency>
  115. <groupId>org.apache.httpcomponents</groupId>
  116. <artifactId>httpmime</artifactId>
  117. <version>${httpClient.version}</version>
  118. </dependency>
  119. <dependency>
  120. <groupId>commons-codec</groupId>
  121. <artifactId>commons-codec</artifactId>
  122. <version>1.6</version>
  123. </dependency>
  124. <!-- api invoker -->
  125. <dependency>
  126. <groupId>commons-httpclient</groupId>
  127. <artifactId>commons-httpclient</artifactId>
  128. <version>3.1</version>
  129. </dependency>
  130. <dependency>
  131. <groupId>dom4j</groupId>
  132. <artifactId>dom4j</artifactId>
  133. <version>1.6.1</version>
  134. </dependency>
  135. <dependency>
  136. <groupId>json</groupId>
  137. <artifactId>json</artifactId>
  138. <version>2.3</version>
  139. </dependency>
  140. </dependencies>
  141. <build>
  142. <plugins>
  143. <plugin>
  144. <artifactId>maven-compiler-plugin</artifactId>
  145. <configuration>
  146. <source>1.6</source>
  147. <target>1.6</target>
  148. <encoding>UTF-8</encoding>
  149. <failOnError>false</failOnError>
  150. </configuration>
  151. </plugin>
  152. <plugin>
  153. <artifactId>maven-jar-plugin</artifactId>
  154. <configuration>
  155. <archive>
  156. <addMavenDescriptor>false</addMavenDescriptor>
  157. </archive>
  158. </configuration>
  159. </plugin>
  160. <plugin>
  161. <groupId>org.apache.maven.plugins</groupId>
  162. <artifactId>maven-source-plugin</artifactId>
  163. <executions>
  164. <execution>
  165. <id>attach-sources</id>
  166. <phase>verify</phase>
  167. <goals>
  168. <goal>jar</goal>
  169. </goals>
  170. </execution>
  171. </executions>
  172. </plugin>
  173. <plugin>
  174. <artifactId>maven-assembly-plugin</artifactId>
  175. <version>2.2-beta-1</version>
  176. <configuration>
  177. <descriptors>
  178. <descriptor>assembly.xml</descriptor>
  179. </descriptors>
  180. <appendAssemblyId>false</appendAssemblyId>
  181. </configuration>
  182. <executions>
  183. <execution>
  184. <id>make-assembly</id>
  185. <phase>package</phase>
  186. <goals>
  187. <goal>single</goal>
  188. </goals>
  189. </execution>
  190. </executions>
  191. </plugin>
  192. </plugins>
  193. </build>
  194. </project>

3.新建 web.xml

src - main 下新建目录 webapp,webapp 下新建目录 WEB-INF,WEB-INF 下新建 web.xml,如下图所示:

根据项目的实际需要编辑 web.xml,作者的示例如下:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <web-app id="WebApp_ID" version="2.4"
  3. xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
  5. <display-name>noti-service</display-name>
  6. <context-param>
  7. <param-name>log4jConfigLocation</param-name>
  8. <param-value>/WEB-INF/log4j.properties</param-value>
  9. </context-param>
  10. <context-param>
  11. <param-name>webAppRootKey</param-name>
  12. <param-value>noti-service.root</param-value>
  13. </context-param>
  14. <context-param>
  15. <param-name>log4jRefreshInterval</param-name>
  16. <param-value>60000</param-value>
  17. </context-param>
  18. <context-param>
  19. <param-name>contextConfigLocation</param-name>
  20. <param-value>/WEB-INF/applicationContext*.xml</param-value>
  21. </context-param>
  22. <listener>
  23. <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
  24. </listener>
  25. <listener>
  26. <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  27. </listener>
  28. <filter>
  29. <filter-name>SetCharacterEncoding</filter-name>
  30. <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
  31. <init-param>
  32. <param-name>encoding</param-name>
  33. <param-value>utf-8</param-value>
  34. </init-param>
  35. </filter>
  36. <filter-mapping>
  37. <filter-name>SetCharacterEncoding</filter-name>
  38. <url-pattern>/*</url-pattern>
  39. </filter-mapping>
  40. <!-- Spring MVC see /WEB-INF/spring-servlet.xml -->
  41. <servlet>
  42. <servlet-name>spring</servlet-name>
  43. <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  44. <load-on-startup>1</load-on-startup>
  45. </servlet>
  46. <servlet-mapping>
  47. <servlet-name>spring</servlet-name>
  48. <url-pattern>/</url-pattern>
  49. </servlet-mapping>
  50. <!-- session timeout, unit: second -->
  51. <session-config>
  52. <session-timeout>120</session-timeout>
  53. </session-config>
  54. </web-app>

4.新建资源目录

src - main 和 src - test 下分别新建 Source Folder 名为 resources:

5.修改 .classpath

切换至 Eclipse 的 Navigator 视图,编辑 noti-service 项目下的 .classpath 文件内容如下:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <classpath>
  3. <classpathentry kind="src" path="src/main/java"/>
  4. <classpathentry kind="src" path="src/main/resources"/>
  5. <classpathentry kind="src" path="src/test/java"/>
  6. <classpathentry kind="src" path="src/test/resources"/>
  7. <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
  8. <classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
  9. <classpathentry kind="var" path="TOMCAT_HOME/lib/servlet-api.jar"/>
  10. <classpathentry kind="var" path="TOMCAT_HOME/lib/jasper.jar"/>
  11. <classpathentry kind="var" path="TOMCAT_HOME/lib/jsp-api.jar"/>
  12. <classpathentry kind="var" path="TOMCAT_HOME/lib/el-api.jar"/>
  13. <classpathentry kind="var" path="TOMCAT_HOME/lib/annotations-api.jar"/>
  14. <classpathentry kind="output" path="src/main/webapp/WEB-INF/classes"/>
  15. </classpath>

编辑好保存后,Package Explorer 视图下的 noti-service 如下:

6.部署到 tomcat 下
        首先要安装 tomcat 插件,可以参考《集成 Tomcat 插件到 Eclipse 的过程》。

安装好 tomcat 插件后,Package Explorer 视图下右击项目名,点击 Properties 打开 Properties 对话框,Tomcat -> 勾选 Is a Tomcat Project,输入 Context name 内容为 "/noti",输入 Subdirectory to set as web application root(optional) 内容为 "/src/main/webapp",(可以参考下图)点击 OK。

这时项目根目录下会有 .tomcatplugin 生成,而 %tomcat%/conf/Catalina/localhost 目录下会有 noti.xml 生成。
        7.修改 .tomcatplugin

切换至 Eclipse 的 Navigator 视图,编辑 noti-service 项目下的 .tomcatplugin 文件内容如下:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <tomcatProjectProperties>
  3. <rootDir>/src/main/webapp</rootDir>
  4. <exportSource>false</exportSource>
  5. <reloadable>false</reloadable>
  6. <redirectLogger>true</redirectLogger>
  7. <updateXml>true</updateXml>
  8. <warLocation></warLocation>
  9. <extraInfo></extraInfo>
  10. <webPath>/noti</webPath>
  11. <webClassPathEntries>
  12. <webClassPathEntry>/noti-service/src/main/webapp/WEB-INF/classes</webClassPathEntry>
  13. <webClassPathEntry>org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER</webClassPathEntry>
  14. </webClassPathEntries>
  15. </tomcatProjectProperties>

8.断点跟踪

这时,你就可以单击工具栏里的小猫按钮,对自己的 JEE 项目进行断点跟踪调试了。项目最终截图如下:

时间: 2024-10-13 00:21:02

使用 Eclipse 的 Maven 2 插件开发一个 JEE 项目的相关文章

Maven起步--通过Maven创建第一个web项目的图文教程

一.创建项目. 创建一个Maven项目也十分简单,选择菜单项File -> New -> Other,在弹出的对话框中选择Maven下的Maven Project,然后点击Next . 1.Eclipse中用Maven创建项目 选择MavenProjec. 2. 如果要选择工作集的话,可以选add project to working set. 3.选maven-archetype-webapp. 在Filter中输入org.apache.maven.archetypes,选择Artifact

用Maven创建第一个web项目

http://blog.csdn.net/xybelieve1990/article/details/52043127 原文地址:http://www.cnblogs.com/leiOOlei/p/3361633.html 一.创建项目 1.Eclipse中用Maven创建项目 上图中Next 2.继续Next 3.选maven-archetype-webapp后,next 4.填写相应的信息,Packaged是默认创建一个包,不写也可以 5.创建好项目后,目录如下: 至此,项目已经创建完毕,下

java+Maven+SpringBoot构建一个webapp项目

一.先创建一个Maven项目 1.打开eclipse,新建一个项目 File->new->Maven Prooject(若Maven Project不存在,可以在other中寻找) 2.这里的界面默认,点击next,出现如下界面: 3.选择我们需要构建的webapp,然后点击next, 4.输入必要的信息,点击finish,完成了一个webapp项目的基础创建. 项目结构如图所示 发现有红叉, 右键点击SpringBootProject->Build Path->Configure

IntelliJ IDEA 中配置Maven以及创建一个Web项目

IntelliJ IDEA 中配置Maven Step.1 File-Settings Step.2 使用Maven创建一个Web项目 Step.1 File-New-Project Step.2

maven初始搭建一个基础项目(spring mvc+spring+jdbc mysql+)

技术选型: 一.项目搭建: 1)创建maven项目 (我博客里面有介绍) 选择aptach的maven-archetype-webapp 填入groupIDhe artifactId等 确认项目名称 maven插件会自动生成项目结构 2)添加其他目录 在/src/main下添加java目录(命名自己定),设置为源码根目录 注:有需要的话可以在src目录下添加测试相关代码的目录 建立如下目录结构(自己定) com.xx.common com.xx.vip .entity .dao .functio

用Eclipse+Maven快速创建一个SpringBoot项目

1. 去https://start.spring.io/默认下载一个maven项目 Generate Project(懂的话也可以更改其中的配置). 2. 打开Eclipse,导入刚刚解压的Maven项目. 3. 在demo下建立一个controller包,简单显示一点数据: package com.example.demo.controller; import org.springframework.boot.autoconfigure.SpringBootApplication; impor

使用maven构建第一个web项目

在eclipse中,正常创建maven项目后,发现在index.jsp中会报错,此时在pom.xml中加入如下依赖关系即可 1 <dependency> 2 <groupId>javax.servlet</groupId> 3 <artifactId>javax.servlet-api</artifactId> 4 <version>3.0.1</version> 5 <!-- 只在编译和测试时运行 --> 6

Eclipse和Maven集成

本文使用 Eclipse 集成 Maven,并创一个基于 maven的web工程 一 环境版本信息 本文使用的版本信息如下: Eclipse Version: Mars.1 Release (4.5.1) Maven Version: Apache maven 3.2.1 Jave Version : 1.7.0_25 二 创建一个Web项目

eclipse 使用maven 创建springmvc + mybatis

接着eclipse 使用maven 创建纯spring mvc项目 毕竟项目都要访问数据库的, 所以加上mybatis的支持也就是网上大多时候说的 SSM框架的搭建(Spring + Spring MVC + Mybatis) 这个项目就叫createssm 还是从pom.xml文件开始 1 <!-- mybatis start --> 2 <dependency> 3 <groupId>org.mybatis</groupId> 4 <artifac