- 浏览: 214438 次
- 性别:
- 来自: 北京
文章分类
最新评论
Maven之自定义pom类型的基础项目
摘要:在当前的软件开发场景中,大都是通过maven管理项目,而如果使用maven的话,其实也会有很多问题,比如项目中依赖的版本管理就
是一个很头疼的事,如果一个项目中有很多人同时开发那么这就很可能造成大家添加的依赖的版本不一致的情况,那样的话会给项目开发
带来很多不必要的麻烦,所以为了让所有的依赖的版本能一致,就需要我们先自定义一个统一依赖版本的基础项目,其他的项目在引用依赖
是一个很头疼的事,如果一个项目中有很多人同时开发那么这就很可能造成大家添加的依赖的版本不一致的情况,那样的话会给项目开发
带来很多不必要的麻烦,所以为了让所有的依赖的版本能一致,就需要我们先自定义一个统一依赖版本的基础项目,其他的项目在引用依赖
的时候直接继承该项目即可,这样所有的开发人员使用的依赖版本就能保持一致性。
一:micaicms-pom项目的pom.xml:
<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>org.micaicms</groupId> <artifactId>micaicms-pom</artifactId> <version>1.0</version> <packaging>pom</packaging> <name>MICAICMS POM</name> <description>MICAICMS ROOT POM</description> <properties> <!-- 前端 Java开发工具 --> <!-- 1.Servlet --> <servlet-api.version>3.0.1</servlet-api.version> <!-- 2.Jsp --> <jsp-api.version>2.2</jsp-api.version> <!-- 3.Jstl --> <jstl.version>1.2</jstl.version> <standard.version>1.1.2</standard.version> <!-- 4.Echart-java --> <ECharts.version>2.1.8.3</ECharts.version> <!-- 5.Freemarker --> <freemarker.version>2.3.2</freemarker.version> <!-- 6.Json --> <jackson.version>1.9.13</jackson.version> <jackson-databind.version>2.5.1</jackson-databind.version> <!-- Spring --> <spring-framework.version>4.0.6.RELEASE</spring-framework.version> <!-- 面向切面工具 --> <aspectjweaver.version>1.8.1</aspectjweaver.version> <!-- 文本处理工具 --> <!-- 1.Dom4j --> <dom4j.version>1.6.1</dom4j.version> <!-- 2.Poi --> <poi.version>3.10-FINAL</poi.version> <!-- 3.IText --> <itext.version>5.5.4</itext.version> <!-- 数据库开发工具 --> <!-- 1.tomcat-jdbc --> <tomcat-jdbc.version>7.0.52</tomcat-jdbc.version> <!-- 2.Mybatis --> <mybatis.version>3.2.2</mybatis.version> <mybatis-paginator.version>1.2.15</mybatis-paginator.version> <mybatis-spring.version>1.2.2</mybatis-spring.version> <!-- 3.Mysql connector --> <mysql-connector.version>5.1.30</mysql-connector.version> <!-- 日志工具 --> <!-- 1.slf4j --> <slf4j.version>1.7.7</slf4j.version> <!-- 2.log4j --> <log4j.version>2.1</log4j.version> <!-- Quartz --> <quartz.version>2.1.7</quartz.version> <!-- Activiti --> <activiti.version>5.16.3</activiti.version> <!-- cas_client --> <cas_client.version>3.3.0</cas_client.version> <!-- Test --> <junit.version>4.10</junit.version> <!-- JDK --> <jdk.version>1.8</jdk.version> <!-- 后台验证工具 --> <!-- 1.hibernate-validator --> <hibernate-validator.version>5.1.3.Final</hibernate-validator.version> <!-- 文件上传工具 --> <!-- 1.commons-fileupload --> <commons-fileupload.version>1.3.1</commons-fileupload.version> <!-- 润乾报表工具 --> <!-- 1.runqian_report --> <runqian.version>4.5.0-RELEASE</runqian.version> <!-- 1.ckeditor --> <ckeditor.version>4.4.7</ckeditor.version> <!-- 2.bootstrap --> <bootstrap.version>3.3.0</bootstrap.version> <!-- 3.echarts --> <echarts.version>2.1.10</echarts.version> <!-- 4.jquery --> <jquery.version>1.11.1</jquery.version> <!-- 5.jqwidgets --> <jqwidgets.version>3.8.0</jqwidgets.version> <jquery-ui.version>1.11.1</jquery-ui.version> <jquery-form.version>3.51</jquery-form.version> <!-- 校验工具 --> <jquery.validate.js.version>1.13.1</jquery.validate.js.version> <!-- 文件上传工具 --> <jquery-file-upload.version>9.8.1</jquery-file-upload.version> </properties> <dependencyManagement> <dependencies> <!-- 前端 Java开发工具 --> <!-- 1.Servlet --> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>${servlet-api.version}</version> <scope>provided</scope> </dependency> <!-- 2.Jsp --> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>jsp-api</artifactId> <version>${jsp-api.version}</version> <scope>provided</scope> </dependency> <!-- 3.jstl --> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>${jstl.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupId>taglibs</groupId> <artifactId>standard</artifactId> <version>${standard.version}</version> </dependency> <!-- 4.spring-mvc --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${spring-framework.version}</version> </dependency> <!-- 5.Echart-java --> <dependency> <groupId>com.github.abel533</groupId> <artifactId>ECharts</artifactId> <version>${ECharts.version}</version> </dependency> <!-- 6.Freemarker --> <dependency> <groupId>freemarker</groupId> <artifactId>freemarker</artifactId> <version>${freemarker.version}</version> </dependency> <!-- 7.Json --> <dependency> <groupId>org.codehaus.jackson</groupId> <artifactId>jackson-mapper-asl</artifactId> <version>${jackson.version}</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>${jackson-databind.version}</version> </dependency> <!-- Spring and Transactions --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${spring-framework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>${spring-framework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>${spring-framework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <version>${spring-framework.version}</version> </dependency> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>${aspectjweaver.version}</version> </dependency> <!-- 文本处理 --> <!-- 1.Dom4j --> <dependency> <groupId>dom4j</groupId> <artifactId>dom4j</artifactId> <version>${dom4j.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-oxm</artifactId> <version>${spring-framework.version}</version> <exclusions> <exclusion> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> </exclusion> </exclusions> </dependency> <!-- 2.Poi --> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>${poi.version}</version> </dependency> <!-- 3.IText --> <dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</artifactId> <version>${itext.version}</version> </dependency> <!-- 数据库开发 --> <!-- 1.数据库连接池 --> <dependency> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-jdbc</artifactId> <version>${tomcat-jdbc.version}</version> <scope>runtime</scope> </dependency> <!-- 2.mybatis --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>${mybatis.version}</version> </dependency> <!-- 3.mybatis分页插件 --> <dependency> <groupId>com.github.miemiedev</groupId> <artifactId>mybatis-paginator</artifactId> <version>${mybatis-paginator.version}</version> </dependency> <!-- 4.mybatis与spring集成 --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>${mybatis-spring.version}</version> </dependency> <!-- 5.Mysql 数据库驱动 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${mysql-connector.version}</version> </dependency> <!-- Quartz --> <dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>${quartz.version}</version> </dependency> <!-- CAS --> <dependency> <groupId>org.jasig.cas.client</groupId> <artifactId>cas-client-core</artifactId> <version>${cas_client.version}</version> </dependency> <!-- Activiti --> <dependency> <groupId>org.activiti</groupId> <artifactId>activiti-engine</artifactId> <version>${activiti.version}</version> </dependency> <dependency> <groupId>org.activiti</groupId> <artifactId>activiti-spring</artifactId> <version>${activiti.version}</version> </dependency> <!-- 日志工具 --> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>${slf4j.version}</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j-impl</artifactId> <version>${log4j.version}</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>${log4j.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-web</artifactId> <version>${log4j.version}</version> <scope>runtime</scope> </dependency> <!-- Test Artifacts --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>${spring-framework.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>${junit.version}</version> <scope>test</scope> </dependency> <!-- 后台验证工具 --> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</artifactId> <version>${hibernate-validator.version}</version> </dependency> <!-- 上传附件工具 --> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>${commons-fileupload.version}</version> </dependency> <!-- 润乾报表工具 --> <dependency> <groupId>com.runqian</groupId> <artifactId>ruanqian_report</artifactId> <version>${runqian.version}</version> <type>pom</type> </dependency> <!-- 1.ckeditor --> <dependency> <groupId>org.webjars</groupId> <artifactId>ckeditor</artifactId> <version>${ckeditor.version}</version> </dependency> <!-- 2.bootstrap --> <dependency> <groupId>org.webjars</groupId> <artifactId>bootstrap</artifactId> <version>${bootstrap.version}</version> </dependency> <!-- 3.echarts --> <dependency> <groupId>org.webjars</groupId> <artifactId>echarts</artifactId> <version>${echarts.version}</version> </dependency> <!-- 4.jquery --> <dependency> <groupId>org.webjars</groupId> <artifactId>jquery</artifactId> <version>${jquery.version}</version> </dependency> <!-- 5.jqwidgets --> <dependency> <groupId>org.webjars</groupId> <artifactId>jqwidgets</artifactId> <version>${jqwidgets.version}</version> </dependency> <dependency> <groupId>org.webjars</groupId> <artifactId>jquery-ui</artifactId> <version>${jquery-ui.version}</version> </dependency> <dependency> <groupId>org.webjars</groupId> <artifactId>jquery-form</artifactId> <version>${jquery-form.version}</version> </dependency> <dependency> <groupId>org.webjars</groupId> <artifactId>jquery.validate.js</artifactId> <version>${jquery.validate.js.version}</version> </dependency> <!-- 文件操作工具 --> <dependency> <groupId>org.webjars</groupId> <artifactId>jquery-file-upload</artifactId> <version>${jquery-file-upload.version}</version> </dependency> </dependencies> </dependencyManagement> <build> <pluginManagement> <plugins> <plugin> <artifactId>maven-eclipse-plugin</artifactId> <version>2.9</version> <configuration> <additionalProjectnatures> <projectnature>org.springframework.ide.eclipse.core.springnature</projectnature> </additionalProjectnatures> <additionalBuildcommands> <buildcommand>org.springframework.ide.eclipse.core.springbuilder</buildcommand> </additionalBuildcommands> <downloadSources>true</downloadSources> <downloadJavadocs>true</downloadJavadocs> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.5.1</version> <configuration> <source>${jdk.version}</source> <target>${jdk.version}</target> <showWarnings>true</showWarnings> <showDeprecation>true</showDeprecation> <encoding>UTF-8</encoding> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <version>2.7</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.18.1</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-failsafe-plugin</artifactId> <version>2.18.1</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-verifier-plugin</artifactId> <version>1.0</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> <version>2.4</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>2.10.1</version> </plugin> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.0</version> <configuration> <verbose>true</verbose> <overwrite>true</overwrite> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-report-plugin</artifactId> <version>2.18.1</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <version>2.5.3</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <version>2.10</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-enforcer-plugin</artifactId> <version>1.4</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-release-plugin</artifactId> <version>2.5.1</version> </plugin> <plugin> <groupId>org.codehaus.cargo</groupId> <artifactId>cargo-maven2-plugin</artifactId> <version>1.4.12</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId> <version>2.14</version> <dependencies> <dependency> <groupId>com.puppycrawl.tools</groupId> <artifactId>checkstyle</artifactId> <version>6.0</version> </dependency> </dependencies> <configuration> <encoding>UTF-8</encoding> </configuration> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>findbugs-maven-plugin</artifactId> <version>3.0.0</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-scm-plugin</artifactId> <version>1.9.2</version> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <version>1.2.1</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>2.5</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>2.6</version> </plugin> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> <configuration> <charset>UTF-8</charset> </configuration> </plugin> </plugins> </pluginManagement> </build> <repositories> <repository> <id>micaicms</id> <name>Micaicms Repositories</name> <url>http://127.0.0.1:8081/nexus/content/groups/public/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>Micaicms</id> <name>Micaicms Plugin Repositories</name> <url>http://127.0.0.1:8081/nexus/content/groups/public/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </pluginRepository> </pluginRepositories> <distributionManagement> <repository> <id>releases</id> <name>Micaicms Releases</name> <url>http://127.0.0.1:8081/nexus/content/repositories/releases/</url> </repository> <snapshotRepository> <id>snapshots</id> <name>Micaicms Releases</name> <url>http://127.0.0.1:8081/nexus/content/repositories/snapshots/</url> </snapshotRepository> </distributionManagement> </project>
相关推荐
一、Idea关联的maven本地仓库配置...三、3个可单独使用的,maven项目文件pom.xml自定义配置 pom-maven-springboot-CusConfigV1.xml pom-maven-springboot-CusConfigV2.xml pom-maven-spring-CusConfigV1不推荐使用.xml
描述:通过maven的自定义archetype创建自定义的项目框架 1.下载项目到你的本地workspace 2.进入到你该项目的根目录(也就是pom.xml所在的目录) 3.执行命令把该项目安装到你的本地仓库 mvn clean install 4.执行命令...
实现自定义标签
Alice机器人,修改源码使用IK分词器,支持中文 自定义标签的使用。
#micaicms-web-modules-archetypeMaven之自定义archetype生成多模块结构的基础项目骨架一:项目骨架介绍该项目骨架集成了Spring,SpringMVC,MyBatis,jsp,jquery,bootstrap等二:项目骨架使用介绍1.首先下载该...
主要是写的如何在windows系统上配置maven环境,并使用maven将自定义的jar注入到maven仓库,最后在springboot pom文件上的使用。
最全maven pom文件 功能包括 1.整合 scm(git) 、ci(hudson)、issus(trac) 2.依赖部分根据自己添加 3.build 部分,自定义目录功能 4.report整合包括:javadoc、jxr、checkstyle、pmd、changelog、emma、...
第11章:用Maven管理项目版本/11.4 版本管理举例/11.4.5 在POM中配置/11.4.5.1 发布插件以及标签的基础目录 第11章:用Maven管理项目版本/11.4 版本管理举例/11.4.5 在POM中配置/11.4.5.2 发布到私有仓库配置 第11章...
2、依赖管理:Maven能够自动解决项目的依赖关系,你只需要在pom.xml中声明你的项目依赖的库和版本号,Maven会自动下载并管理这些依赖。 3、项目生命周期管理:Maven提供了一系列的构建阶段(如编译、测试、打包、...
Flatten Maven插件 生产发布 开发发布 安装 相似的插件 插件功能 ...基础项目 Scala Identity flatten:flatten pom.xml.flatten生成部署pom.xml.flatten mvn clean package -P flatten < profile>
一个简单的Maven项目 3.1. 简介 3.1.1. 下载本章的例子 3.2. 创建一个简单的项目 3.3. 构建一个简单的项目 3.4. 简单的项目对象模型 (Project Object Model) 3.5. 核心概念 3.5.1. Maven插件和目标 ...
当前pom.xml中详细的记录了将maven项目打成可运行jar包的完整代码,使用maven的插件maven-assembly-plugin,同时将所有依赖打到jar包中,亲测可用。
基于项目对象模型(缩写:POM)概念,Maven利用一个中央信息片断能管理一个项目的构建、报告和文档等步骤。它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),...
通过在POM中指定依赖项的坐标,Maven可以自动解析依赖关系,并从中央仓库或自定义仓库中下载所需的JAR包。 约定优于配置: Maven遵循“约定优于配置”的原则,即在大多数情况下,它会根据标准的项目结构和约定来...
Maven2也考虑到:不同类型的项目需要拥有不同的目录结构。如创建web项目,可以使用命令: mvn archetype:create -DgroupId=com.mycompany.app -DartifactId=my-webapp -DarchetypeArtifactId=maven-archetype-...
基于项目对象模型(缩写:POM)概念,Maven利用一个中央信息片断能管理一个项目的构建、报告和文档等步骤。它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),...
要求通过配置(自定义)规则来满足环境约束(Maven和Java版本,属性等) Maven原型插件 原型生成示例Maven插件 Maven原型插件 允许从称为原型的现有模板创建Maven项目。 并从现有项目创建原型。 网站: :...
Java Maven 产品特点 VS Code的Maven扩展。...Maven资源管理器该扩展程序将扫描工作区中的pom.xml ,并在边栏中显示所有Maven项目及其模块。 运行插件目标该扩展程序解析Maven项目的有效pom,并按层
pom xml冲突是件挺恶心的事儿 还有就是 遇到了导入myeclipse里 resource文件不编译到指定目录的问题 ">maven建的web项目 用Myeclipse可直接导入 基于注解的零配置struts2 1 页面跳转 2 查数据库 3 事务控制到...