Maven cheat sheet 手抄:從入門到無語

Maven cheat sheet 手抄

寫給懶人看的

概念

生命週期由階段構成:validate,compile,test,package,verify,install,deploy

基礎

  • 基礎編譯:mvn clean package

  • 環境變量:MAVEN_HOME, MAVEN_OPTS, MAVEN_ARGS

配置

  • 打印激活的配置: mvn help:active-profiles

  • 激活Profile: -Pprofile1 -Pprofile2 -P!profile3

參數

  • 調試:-X
  • 不打印下載進度:-ntp
  • 按指定模塊構建: -am -pl <module,s>

階段

  • 安裝到本地緩存:install
  • 發佈到Nexus私服:deploy
  • 打印依賴樹:dependency:tree
  • 手動下載依賴:dependency:get -Dartifact=<GAV>[:classifier]
  • 從文件安裝:install:install-file -DgroupId=<G> -DartifactId=<A> -Dversion=<V> -Dpackaging=jar -Dfile=<file>
  • 生成源代碼:generate-sources
  • 處理源代碼:process-sources

配置文件

  • 用戶配置文件:(%USER_HOME%/.m2/settings.xml)
  • 全局配置文件:(${maven.home}/conf/settings.xml)

網絡代理

<proxies><proxy></proxy></proxies>
參數:id,active,protocol,host,port,username,password,nonProxyhosts:分隔符|

[========]

maven系統依賴

 <scope>system</scope>
 <systemPath>${java.home}/../lib/tools.jar</systemPath>

HttpClient HTTP Wagon配置

<servers><server><id></id> <configuration></configuration></server></servers>

參數:c:httpHeaders:property,c:timeout, c:httpConfiguration:all:readTimeout

常用插件清單

場景 插件名稱 關鍵信息
組織,分發ZIP包 maven-assembly-plugin assembly:single
打包源碼 maven-source-plugin 生成classifier=sources的jar
SpringBoot spring-boot-maven-plugin executable, repackage
打包jar包 maven-jar-plugin include, exclude, manifestEntries
shade依賴 maven-shade-plugin relocation,META-INF transformer, SPI
複製,解壓依賴 maven-dependency-plugin copy-dependencies,unpack

常見Transformer配置

<transformers>
	<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
		<manifestEntries>
			<Main-Class>com.slankka.maven</Main-Class>
		</manifestEntries>
	</transformer>
	<transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
	<transformer
				 implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
		<resource>META-INF/spring.handlers</resource>
	</transformer>
	<transformer
				 implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
		<resource>META-INF/spring.schemas</resource>
	</transformer>
</transformers>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章