淘淘商城maven工程的创建和svn的上传实现

后台管理系统工程结构

maven管理的好处

1、项目构建。Maven定义了软件开发的整套流程体系,并进行了封装,开发人员只需要指定项目的构建流程,无需针对每个流程编写自己的构建脚本。

2、依赖管理。除了项目构建,Maven最核心的功能是软件包的依赖管理,能够自动分析项目所需要的依赖软件包,并到Maven中心仓库去下载。

A)管理依赖的jar包

B)管理工程之间的依赖关系。

Maven本地仓库

在当前系统用户的文件夹下。例如当前用户是Administrator那么本地仓库就是在

C:\Users\Administrator\.m2目录下。

只需要用老师提供的.m2覆盖本地的就可以。

Maven插件使用eclipse ma依赖管理

传统工程结构:

 
   

Maven管理的工程结构

不使用maven:工程部署时需要手动复制jar包。完成工程构建。非常繁琐。

使用maven进行工程构建:

使用maven可以实现一步构建。

后台管理系统工程结构:

taotao-parent -- 管理依赖jar包的版本,全局,公司级别

|--taotao-common  --- 通用组件、工具类

|--taotao-manage  -- 后台系统

|--com.taotao.manage.web

|--com.taotao.manage.service

|--com.taotao.manage.mapper

|--com.taotao.manage.pojo

1.4. 创建taotao-parent(pom工程,所有工程都继承与此工程)

1.4.1.   创建maven工程

1.4.2.   修改pom文件


<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/xsd/maven-4.0.0.xsd">

<modelVersion>4.0.0</modelVersion>

<groupId>com.taotao</groupId>

<artifactId>taotao-parent</artifactId>

<version>0.0.1-SNAPSHOT</version>

<packaging>pom</packaging>

<!-- 集中定义依赖版本号 -->

<properties>

<junit.version>4.12</junit.version>

<spring.version>4.1.3.RELEASE</spring.version>

<mybatis.version>3.2.8</mybatis.version>

<mybatis.spring.version>1.2.2</mybatis.spring.version>

<mybatis.paginator.version>1.2.15</mybatis.paginator.version>

<mysql.version>5.1.32</mysql.version>

<slf4j.version>1.6.4</slf4j.version>

<jackson.version>2.4.2</jackson.version>

<druid.version>1.0.9</druid.version>

<httpclient.version>4.3.5</httpclient.version>

<jstl.version>1.2</jstl.version>

<servlet-api.version>2.5</servlet-api.version>

<jsp-api.version>2.0</jsp-api.version>

<joda-time.version>2.5</joda-time.version>

<commons-lang3.version>3.3.2</commons-lang3.version>

<commons-io.version>1.3.2</commons-io.version>

<commons-net.version>3.3</commons-net.version>

<pagehelper.version>3.4.2-fix</pagehelper.version>

<jsqlparser.version>0.9.1</jsqlparser.version>

<commons-fileupload.version>1.3.1</commons-fileupload.version>

<jedis.version>2.7.2</jedis.version>

<solrj.version>4.10.3</solrj.version>

</properties>

<dependencyManagement>

<dependencies>

<!-- 时间操作组件 -->

<dependency>

<groupId>joda-time</groupId>

<artifactId>joda-time</artifactId>

<version>${joda-time.version}</version>

</dependency>

<!-- Apache工具组件 -->

<dependency>

<groupId>org.apache.commons</groupId>

<artifactId>commons-lang3</artifactId>

<version>${commons-lang3.version}</version>

</dependency>

<dependency>

<groupId>org.apache.commons</groupId>

<artifactId>commons-io</artifactId>

<version>${commons-io.version}</version>

</dependency>

<dependency>

<groupId>commons-net</groupId>

<artifactId>commons-net</artifactId>

<version>${commons-net.version}</version>

</dependency>

<!-- Jackson Json处理工具包 -->

<dependency>

<groupId>com.fasterxml.jackson.core</groupId>

<artifactId>jackson-databind</artifactId>

<version>${jackson.version}</version>

</dependency>

<!-- httpclient -->

<dependency>

<groupId>org.apache.httpcomponents</groupId>

<artifactId>httpclient</artifactId>

<version>${httpclient.version}</version>

</dependency>

<!-- 单元测试 -->

<dependency>

<groupId>junit</groupId>

<artifactId>junit</artifactId>

<version>${junit.version}</version>

<scope>test</scope>

</dependency>

<!-- 日志处理 -->

<dependency>

<groupId>org.slf4j</groupId>

<artifactId>slf4j-log4j12</artifactId>

<version>${slf4j.version}</version>

</dependency>

<!-- Mybatis -->

<dependency>

<groupId>org.mybatis</groupId>

<artifactId>mybatis</artifactId>

<version>${mybatis.version}</version>

</dependency>

<dependency>

<groupId>org.mybatis</groupId>

<artifactId>mybatis-spring</artifactId>

<version>${mybatis.spring.version}</version>

</dependency>

<dependency>

<groupId>com.github.miemiedev</groupId>

<artifactId>mybatis-paginator</artifactId>

<version>${mybatis.paginator.version}</version>

</dependency>

<dependency>

<groupId>com.github.pagehelper</groupId>

<artifactId>pagehelper</artifactId>

<version>${pagehelper.version}</version>

</dependency>

<!-- MySql -->

<dependency>

<groupId>mysql</groupId>

<artifactId>mysql-connector-java</artifactId>

<version>${mysql.version}</version>

</dependency>

<!-- 连接池 -->

<dependency>

<groupId>com.alibaba</groupId>

<artifactId>druid</artifactId>

<version>${druid.version}</version>

</dependency>

<!-- Spring -->

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-context</artifactId>

<version>${spring.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-beans</artifactId>

<version>${spring.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-webmvc</artifactId>

<version>${spring.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-jdbc</artifactId>

<version>${spring.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-aspects</artifactId>

<version>${spring.version}</version>

</dependency>

<!-- JSP相关 -->

<dependency>

<groupId>jstl</groupId>

<artifactId>jstl</artifactId>

<version>${jstl.version}</version>

</dependency>

<dependency>

<groupId>javax.servlet</groupId>

<artifactId>servlet-api</artifactId>

<version>${servlet-api.version}</version>

<scope>provided</scope>

</dependency>

<dependency>

<groupId>javax.servlet</groupId>

<artifactId>jsp-api</artifactId>

<version>${jsp-api.version}</version>

<scope>provided</scope>

</dependency>

<!-- 文件上传组件 -->

<dependency>

<groupId>commons-fileupload</groupId>

<artifactId>commons-fileupload</artifactId>

<version>${commons-fileupload.version}</version>

</dependency>

<!-- Redis客户端 -->

<dependency>

<groupId>redis.clients</groupId>

<artifactId>jedis</artifactId>

<version>${jedis.version}</version>

</dependency>

<!-- solr客户端 -->

<dependency>

<groupId>org.apache.solr</groupId>

<artifactId>solr-solrj</artifactId>

<version>${solrj.version}</version>

</dependency>

</dependencies>

</dependencyManagement>

<build>

<finalName>${project.artifactId}</finalName>

<plugins>

<!-- 资源文件拷贝插件 -->

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-resources-plugin</artifactId>

<version>2.7</version>

<configuration>

<encoding>UTF-8</encoding>

</configuration>

</plugin>

<!-- java编译插件 -->

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-compiler-plugin</artifactId>

<version>3.2</version>

<configuration>

<source>1.7</source>

<target>1.7</target>

<encoding>UTF-8</encoding>

</configuration>

</plugin>

</plugins>

<pluginManagement>

<plugins>

<!-- 配置Tomcat插件 -->

<plugin>

<groupId>org.apache.tomcat.maven</groupId>

<artifactId>tomcat7-maven-plugin</artifactId>

<version>2.2</version>

</plugin>

</plugins>

</pluginManagement>

</build>

</project>

将taotao-parent安装到本地仓库。

taotao-common(jar工程,用于管理所需要的工具包)

要对taotao-parent的继承

创建工程

修改pom文件

修改taotao-common工程的pom文件,在文件中添加对taotao-parent的继承。


<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/xsd/maven-4.0.0.xsd">

<modelVersion>4.0.0</modelVersion>

<parent>

     <groupId>com.taotao</groupId>

     <artifactId>taotao-parent</artifactId>

     <version>0.0.1-SNAPSHOT</version>

  </parent>

<groupId>com.taotao</groupId>

<artifactId>taotao-common</artifactId>

<version>0.0.1-SNAPSHOT</version>

</project>

1.5.3.   更新工程

工程点击右键→maven→update Project Configuration

1.6. taotao-manager(需要依赖taotao-common)

1.6.1.   创建taotao-manager(pom工程,用来管理下面的四个文件)

修改pom文件:

在对应的工程中的pom.xml中添加所对应的依赖,直接从taotao-parent的依赖中拷贝即可。

taotao-manage-pojo(jar工程)

Taotao-manager-mapper(jar工程)

Taotao-manager-service(jar工程)

Taotao-manager-web(war工程)

war工程需要web.xml文件

配置工程:

2.      Web.xml


<?xml version="1.0" encoding="UTF-8"?>

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"

id="taotao" version="2.5">

<display-name>taotao-manager</display-name>

<welcome-file-list>

<welcome-file>index.html</welcome-file>

<welcome-file>index.htm</welcome-file>

<welcome-file>index.jsp</welcome-file>

<welcome-file>default.html</welcome-file>

<welcome-file>default.htm</welcome-file>

<welcome-file>default.jsp</welcome-file>

</welcome-file-list>

</web-app>

1.6.6.   配置tomcat插件

运行web工程需要添加一个tomcat插件。插件必须添加到taotao-manager工程中。因为taotao-manager是聚合工程。在运行时需要把子工程聚合到一起才能运行。


<build>

<plugins>

<!-- 配置Tomcat插件 -->

<plugin>

<groupId>org.apache.tomcat.maven</groupId>

<artifactId>tomcat7-maven-plugin</artifactId>

<version>2.2</version>

<configuration>

<port>8080</port>

<path>/</path>

</configuration>

</plugin>

</plugins>

</build>

启动tomcat命令:tomcat7:run

1.6.7.   taotao-manage子模块依赖关系

依赖关系:

web -》 service

service -》 mapper

mapper -》 pojo

2.   提交代码到SVN

2.1. 提交代码

注意:提交到SVN的Maven项目,只提交src和pom.xml

2.2. 从SVN检出项目

1、  从trunk检出项目,并且重命名项目名称

2、  转化为maven项目

3、  聚合项目中子项目需要从父工程中【导入】,选择
【已经存在的maven项目】,不能从SVN再次检出子项目

时间: 2025-01-19 23:03:43

淘淘商城maven工程的创建和svn的上传实现的相关文章

java学习---maven工程的创建+tomcat的热部署

 一.创建maven工程 1.创建maven的的web功能 2.在创建完成后,可能发现功能有错误,在eclipse中的错误描述如下: The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path 解决办法如下: 步骤:bulid Path --> Configure Bulid Path --> Libraries --> add Library -->

Mac下maven工程的创建

最近项目有用到maven,就特地学了一下.maven的一句话攻略就是,项目托管.帮你解决各种项目琐事:清理,导包....等等. 首先先到apach官网去下载一个maven的包,http://maven.apache.org/download.cgi 解压了之后,打开终端.输入: cd ~ vim .bash_profile 在文本里输入 最后保存后输入 source .bash_profile 然后打开eclipse的偏好设置. 创建maven工程,在其中一步中选择 创建完后直接run就可以了,

002商城项目:maven工程的测试以及svn的使用

我们上一篇文章搭建了maven工程,这一篇文章我们就要测试这个工程. 1: 由于这个工程还没有页面,我们要首先建立一个页面.在建立页面的jsp的过程中,我发现了一个问题,我这个eclipse由于缺少JAVAEE的插件导致没有javaweb方面的选项. 解决问题: 这里就是安装插件的地方,我们输入网址,然后选择next.就可以了. 好,解决这个问题之后,我们就可以编写我们的jsp页面了. 如下:index.jsp: <html> <body> <h2>Hello Worl

Maven配置jar(war)包自动打包上传Maven服务器的配置

创建jar(war)包工程 创建一个maven工程 在工程中穿件一个测试类 配置pom.xml <distributionManagement> <repository> <id>nexus-releases</id> <url>http://127.0.0.1:8081/nexus/content/repositories/releases/</url> </repository> <snapshotReposit

创建github账号并上传项目到github

第一步 要托管到github,那你就应该要有一个属于你自己的github帐号,所以你应该先到github.com注册 打开浏览器 在地址栏输入地址:github.com 填写用户名.邮箱.密码 点击Sign up即可简单地注册 完成注册,进入github平台, 点击new repositories ,新建一个新项目(你也可以加入到一个已有的项目) Repository name:通常就写自己自己要建的工程名. Description:就是你对工程的描述了. 选择Public. 如果不想其他人下载

Maven(二)-- 搭建私服,上传jar

一.在setting中配置 私服的镜像,在mirrors标签中加上: <!--第一步 配置私服的镜像--> <mirror> <!--此处配置所有的构建均从私有仓库中下载 *代表所有,也可以写central --> <id>nexus</id> <mirrorOf>*</mirrorOf> <!-- url对应发私服的 Public Repositories --> <url>http://loca

创建项目模板并上传至gallery

在此之前: 你可能需要visual studio sdk:http://www.microsoft.com/en-us/download/details.aspx?id=40758 关于如何创建项目模版及创建过程中应该要注意的事项: 参考此文,中文的:如何:创建项目模板 http://msdn.microsoft.com/zh-cn/library/xkh1wxd8.aspx 以及 如何:替换模板中的参数 甚至 模板参数. 如何创建一个可以供他人使用或者上传至gallery的vsix模版文件,参

基于commons-net实现ftp创建文件夹、上传、下载功能

原文:http://www.open-open.com/code/view/1420774470187 package com.demo.ftp; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.io.PrintWriter

使用IDEA工具创建本地项目并且上传到码云

需要条件: 1.码云/Github建好的git项目 2.IDEA编辑器 3.本地项目 步骤1:创建远程项目 步骤2:复制远程项目地址  注意:此处码云官方已经给出上传项目方法,不过用的是命令行的形式,我们选择一种更加简单的方法. 步骤3:创建好本地项目,点击VCS,按照图中指示给项目创建Git仓库. 步骤4:选择此项目的根目录作为仓库. 步骤5:选中项目名先将项目add到缓冲区,再commit到本地仓库. 这里放一张git的add和commit图解帮助大家理解为什么一个新的项目要先add再com