
Apache maven实战
在项目中积累的maven经验,很实用,以博文的形式分享给大家。以后会陆续更新
西夏一品堂
对新技术持开放且慎重的态度,开放在于新技术到来时有自己的尝试与思考,慎重在于对没有多大价值的所谓的新技术持有自己的判断。绝大部分所谓的新技术都没有多大价值。
展开
-
maven检查是否有新依赖/插件的方法
maven是现在最流行的项目管理工具,在企业中使用的非常广泛。在一个maven管理的项目中,一般会配置很多依赖、插件,如何检查这些依赖是否有最新的版本?除了去这些框架的官方网站上看,maven也自带了检查最新版本的方法就是使用version插件versions-maven-pluginversions:display-dependency-updates scans a p原创 2017-02-01 18:27:13 · 3252 阅读 · 1 评论 -
使用appassembler-maven-plugin插件生成启动脚本
appassembler-maven-plugin可以自动生成跨平台的启动脚本,省去了手工写脚本的麻烦,而且还可以生成jsw的后台运行程序。插件网址:http://www.mojohaus.org/appassembler/appassembler-maven-plugin/appassembler的配置比较简单,在pom.xml的配置文件加入插件配置。生成启动原创 2016-06-01 10:47:34 · 12743 阅读 · 0 评论 -
解决maven编译错误:程序包com.sun.xml.internal.ws.spi不存在
当maven项目里面有用到JDK内部的一些类,接口(如:com.sun.xml.internal.ws.spi.ProviderImpl)等的时候,用maven编译一般会出现如下错误[INFO] BUILD FAILURE[INFO] ------------------------------------------------------------------------[INFO]原创 2016-04-26 18:57:16 · 66273 阅读 · 30 评论 -
使用import scope解决maven继承(单)问题
测试环境 maven 3.3.9想必大家在做SpringBoot应用的时候,都会有如下代码: org.springframework.boot spring-boot-starter-parent 1.3.3.RELEASE继承一个父模块,然后再引入相应的依赖假如说,我不想继承,或者我想继承多个,怎么做?我们知道Maven的继承和Java的继承一样,是无原创 2016-03-15 11:28:03 · 46633 阅读 · 21 评论 -
使用profile解决maven不同的环境deploy到不同的repositories
maven版本:3.3.9一:修改apache-maven-3.3.9\conf\settings.xml 在profiles标签中,添加如下profile dev dev Dev Repository http://admin:123456@192.168.1.101/content/repositories/snapshots/ product原创 2016-03-14 16:05:30 · 3873 阅读 · 0 评论 -
两种方法重命名maven项目的版本号
很多Maven用户遇到过这样一个问题,当项目包含大量模块的时候,为他们集体更新版本就变成一件烦人的事情,本文将介绍两种方法解决此问题方法一:使用maven-release-pluginmvn --batch-mode release:update-versions -DdevelopmentVersion=1.0.2-SNAPSHOT这种方法只能把version设置成快照版本原创 2016-03-02 16:56:53 · 7604 阅读 · 0 评论 -
使用maven运行Java main的2种方式
一:直接在命令行运行mvn clean compile exec:java -Dexec.mainClass="com.demo.App" -Dexec.args="aaa bbb"二:使用插件运行 org.codehaus.mojo exec-maven-plugin 1.4.0 test java com.d原创 2015-11-05 16:37:11 · 2717 阅读 · 0 评论 -
使用wagon-maven-plugin插件自动部署项目
该插件的maven依赖为: org.codehaus.mojo wagon-maven-plugin 1.0插件的文档地址为:http://www.mojohaus.org/wagon-maven-plugin/主要提供如下几个goalwagon:upload-single uploads the specified file to a remot原创 2015-11-01 17:34:34 · 8663 阅读 · 1 评论 -
一招改变maven项目默认的编译级别
大家都知道,一般新建的maven项目,默认的编译级别为1.5,需要手工修改修改方式见我上一篇博客2种方法定义maven项目的编译级别但是,有没有一种方式,直接修改maven默认的编译级别答案是有的,做法是:修改${M2_HOME}/conf/settings.xml文件在 里面加入 jdk8 1.8 1.8 然原创 2015-11-01 14:08:20 · 2150 阅读 · 0 评论 -
2种方法定义maven项目的编译级别
新建的maven项目,默认的编译级别为1.5,这肯定不符合自己的要求的下面有2中方法可以定义maven的编译级别方法一:使用插件的方法 org.apache.maven.plugins maven-compiler-plugin 3.3 1.8 1.8 方法二:使用properties的方法 1.8 1.8通过上面原创 2015-10-09 21:44:07 · 2880 阅读 · 0 评论 -
maven插件开发(二)
接着上一篇文章: maven插件开发(一)这里主要讲解如何配置各种类型的变量值插件代码为:package com.lala.maven.plugin;import java.io.File;import java.net.URL;import java.util.List;import java.util.Map;import java.util.Prop原创 2015-09-30 15:35:22 · 1068 阅读 · 0 评论 -
maven插件开发(一)
环境 Apache Maven 3.3.3 , Java version: 1.7.0_67一:新建Maven项目com.lalasys-maven-plugin1.0.0maven-plugin注意1:packaging必须为maven-plugin2:artifactId 最好是 ${prefix}-maven-plugin 。 maven-${pref原创 2015-09-30 14:44:48 · 1139 阅读 · 0 评论 -
maven配置依赖github上的项目
有些时候,maven中央仓库里面的不是最新的,而我们又要使用最新的依赖,怎么办呢?一种方式是,把项目git clone下来,自己编译,然后安装到maven本地今天,我就来介绍另一种方式提供这种服务的网站是:https://jitpack.io/比如说,我们现在要使用org.influxdb/influxdb-java 2.0的版本,maven中央仓库只是1.5原创 2015-09-26 21:28:30 · 7581 阅读 · 1 评论 -
maven忽略测试的三种方法
方法一: 命令行加参数的方法mvn install -DskipTests 或 mvn install -Dmaven.test.skip=true方法二:使用maven插件的方法 org.apache.maven.plugins maven-surefire-plugin 2.18.1 true 方法三:使用定义变量的方法 true原创 2015-09-20 10:02:38 · 6795 阅读 · 0 评论 -
eclipse里面调试maven插件
某日,在执行maven打包的时候,报错了java.lang.IllegalArgumentException: The header cannot be an empty string. at org.apache.felix.utils.manifest.Parser.parseHeader(Parser.java:37) at org.apache.felix.bundleplug原创 2015-09-13 19:58:46 · 2811 阅读 · 0 评论 -
maven插件之maven-source-plugin
maven-source-plugin 插件主要是用来打包源代码的用法如下: org.apache.maven.plugins maven-source-plugin 2.4 true verify jar-no-fork 然后执行mvn clean installmvn clean deplo原创 2015-09-01 15:07:18 · 5585 阅读 · 0 评论 -
eclipse中maven项目引入依赖后自动下载源码
好多用 Maven 的时候会遇到这样一个棘手的问题:就是添加依赖后由于没有下载并关联源码,导致自动提示无法出现正确的方法名传统的方法就是,手动执行 Maven -> Download Sources也就是说,每添加一个依赖,就需要手动执行一次.其实 eclipse 的 Maven 插件就提供了这个功能,但是可能有许多开发人员没关注这个功能,所以这个分享给那些不太清楚原创 2015-08-20 17:03:49 · 4514 阅读 · 1 评论 -
maven插件介绍之tomcat7-maven-plugin
tomcat7-maven-plugin插件的pom.xml依赖为: org.apache.tomcat.maven tomcat7-maven-plugin 2.2一:直接运行webapp项目 org.apache.tomcat.maven tomcat7-maven-plugin 2.2 /taobao 9090 UTF-原创 2015-07-26 11:48:39 · 7206 阅读 · 0 评论 -
maven插件介绍之maven-jar-plugin
maven-jar-plugin 插件的maven依赖为: org.apache.maven.plugins maven-jar-plugin 2.6一: 打包可执行的jar配置为: org.apache.maven.plugins maven-jar-plugin 2.6 tr原创 2015-07-26 10:44:14 · 16347 阅读 · 0 评论 -
使用maven-assembly-plugin打包zip工程
使用Maven对Web项目进行打包,默认为war包;但有些时候,总是希望打成zip包(亦或其他压缩包,类似tomcat的那种目录结构,直接执行bin/startup.sh就可以),maven-war-plugin插件就无能为力了,这时就用到了maven-assembly-plugin插件了该插件能打包成指定格式分发包,更重要的是能够自定义包含/排除指定的目录或文件(遗留项目中,过滤配置原创 2015-06-28 14:48:30 · 11174 阅读 · 0 评论 -
maven parent中的dependencies和dependencyManagement区别
.原创 2015-06-22 13:45:35 · 4588 阅读 · 0 评论 -
maven私服nexus的安装、配置、使用
Nexus下载 下载地址:http://www.sonatype.org/nexus/archived/我这里下载的是最新版本:nexus-2.11.1-01-bundle.tar.gzNexus启动 解压之后,进入nexus-2.11.1-01/目录,conf目录中的nexus.properties可以配置服务的端口,访问路径contextP原创 2015-06-13 22:40:15 · 1597 阅读 · 0 评论 -
maven的依赖范围
maven技术交流 扣扣群 379165311,群里面会不定期分享一些maven文章和教程,欢迎大家加入原创 2015-06-12 17:58:58 · 1050 阅读 · 0 评论 -
maven webapp的标准pom.xml配置
maven技术交流 扣扣群 379165311,群里面会不定期分享一些maven文章和教程,欢迎大家加入包含jsp、servlet、jstl、compiler、tomcat7、jetty的配置<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XM原创 2015-04-03 18:26:35 · 3242 阅读 · 0 评论 -
maven的profile实现配置的分离
在实际的开发中,如果需要开发的时候,一套配置、测试的时候,一套配置、上线的时候又是一套配置。彼此修改,互不干涉此时,就可以使用maven的profile具体做法如下:一:新建一个maven项目二:在resources目录里面,新建dev、test、production三个目录,代表三种环境的配置文件,项目结构图如下:三:分别在dev, test, produ原创 2015-01-05 13:54:03 · 1915 阅读 · 0 评论 -
maven 指定仓库下载依赖
在项目的pom.xml里面添加 releases http://192.168.9.16:8000/nexus/content/repositories/releases true true always thirdparty http://192.168.9.16:8000/nexus/content/reposit原创 2014-12-01 17:03:03 · 4364 阅读 · 1 评论