[[432395]]
皇冠体育
民众好,我是冰河~~
今天,冰河给民众共享一篇大部分东谈主王人不会的手段,那即是咱们我方开始写一款属于我方的Maven插件。好了,平直参加今天的主题吧。
Maven插件的关系主见 插件坐标定位插件与等闲jar包同样包含坐标定位属性即:groupId、artifactId、version,当使用该插件时会从腹地仓库中搜索,若是莫得则从而已仓库下载,举例底下的成立所示。
<!-- 亚博骰宝独一定位到dependency 插件 --> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <version>2.10</version>execution成立
execution 成立包含一组教养插件怎样践诺的属性:
id :践诺器定名 phase:标记践诺的阶段 goals:标记践诺的主义或功能 configuration:标记践诺主义所需的成立文献 插件的成立和使用示例将插件依赖拷贝到指定目次。
革新<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <version>3.1.1</version> <executions> <execution> <id>copy-dependencies</id> <phase>package</phase> <goals> <goal>copy-dependencies</goal> </goals> <configuration> <outputDirectory>${project.build.directory}/alternateLocation</outputDirectory> <overWriteReleases>false</overWriteReleases> <overWriteSnapshots>true</overWriteSnapshots> <excludeTransitive>true</excludeTransitive> </configuration> </execution> </executions> </plugin>常用插件的使用 通过呐喊践诺插件语法
除了通过成立的方式使用插件除外,Maven也提供了通过呐喊平直调用插件主义其呐喊样式如下所示。
mvn groupId:artifactId:version:goal -D{参数名}
通过呐喊践诺插件示例
(2)展示pom的依赖关系树
mvn org.apache.maven.plugins:maven-dependency-plugin:2.10:tree
(3)平直简化版的呐喊,但前提必须是maven 官方插件
mvn dependency:tree其它常用插件
(1)检讨pom 文献的最终成立
mvn help:effective-pom
(2)原型项生分红
archetype:generate
(3)快速创建一个Web尺度
mvn archetype:generate -DgroupId=io.mykit.web -DartifactId=mykit-maven-web -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false
(4)快速创建一个Java面貌
皇冠体育mvn archetype:generate -DgroupId=io.mykit.java -DartifactId=mykit-maven-java -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false自界说Maven插件
这里,咱们先来说说自界说Maven插件的措施,这里,我将自界说Maven插件的措施归来如下。
(1)创建maven 插件面貌
(2)设定packaging 为maven-plugin
皇冠现金在线开户(3)添加插件依赖
(4)编写插件达成逻辑
(5)打包构建插件
皇冠客服飞机:@seo3687
接下来,咱们就来达成自界说Maven插件。
成立插件面貌的pom.xml这里,我平直跳过了Maven面貌的创建,服气小伙伴们王人会创建Maven面貌,这里,我就不再赘述了,平直给出pom.xml文献的成立,欧博娱乐平台如下所示。
<?xml version="1.0" encoding="UTF-8"?> <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>io.mykit.plugin</groupId> <version>1.0.0-SNAPSHOT</version> <artifactId>mykit-maven-plugin</artifactId> <packaging>maven-plugin</packaging> <dependencies> <dependency> <groupId>org.apache.maven</groupId> <artifactId>maven-plugin-api</artifactId> <version>3.5.0</version> </dependency> <dependency> <groupId>org.apache.maven.plugin-tools</groupId> <artifactId>maven-plugin-annotations</artifactId> <version>3.5</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.6.1</version> <configuration> <source>1.8 </source> <target>1.8 </target> </configuration> </plugin> </plugins> </build> </project>Maven插件的达成类
接下来,咱们来编写Maven插件的达成类。这里,我平直给出类的源代码,如下所示。
双方的争议焦点在于,参与激励计划的员工何时可以转让获授股票。当时的限制性股票激励计划(草案)显示,本激励计划有效期自限制性股票授予登记完成之日起至激励对象获授的限制性股票全部解除限售或回购注销之日止,最长不超过36个月,并设置了相应的解禁条件。然而,《牧原食品股份有限公司股权管理方案》(以下简称《股权管理方案》)又规定了减持的三个“三分之一”管理原则。其中,员工激励股权的三分之一要等到退休后三年才能全部转让。如果员工违背相关规定,相应股权收益则归属于公司。
《每日经济新闻》记者注意到,在半年报的封面设计上,香飘飘一改去年明星产品矩阵集体“出道”的设计风格,上半年黑马产品“兰芳园冻柠茶”独立亮相意味着,这一全新品类或是公司加快即饮业务投入、培育第二增长曲线的下一张“王牌”。
亚博龙虎斗package io.mykit.plugin; import javafx.beans.DefaultProperty; import org.apache.maven.plugin.AbstractMojo; import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.LifecyclePhase; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; /** * @author binghe * @description 自界说Maven插件 */ @Mojo(name = "binghe") public class MykitMavenPlugin extends AbstractMojo { private final Logger logger = LoggerFactory.getLogger(MykitMavenPlugin.class); @Parameter(property="sex") String sex; @Parameter(property="describe") String describe; public void execute() throws MojoExecutionException, MojoFailureException { logger.info(String.format("binghe sex=%s describe=%s",sex,describe)); } }打包安设插件
将自界说的Maven插件打包并安设到腹地Maven仓库,如下所示。
打包mvn clean package安设到腹地仓库
mvn clean install其他面貌中援用自界说插件
若是需要在其他面貌中使用咱们自界说的Maven插件,则只需要创建一个Maven面貌,在Maven面貌的pom.xml文献中引入如下成立即可。
<build> <plugins> <plugin> <!--引入刚刚的插件依赖--> <groupId>io.mykit.plugin</groupId> <version>1.0.0-SNAPSHOT</version> <artifactId>mykit-maven-plugin</artifactId> <!-- 这里加入的是关系参数,这些参数必须跟插件达成内部的属性保抓一致 --> <configuration> <sex>男</sex> <describe>冰河技能微信公众号作家</describe> </configuration> </plugin> </plugins> </build>
好了,今天就到这儿吧,我是冰河,咱们下期见!!
博彩入口ck内衣广告