你的位置:久久综合给合久久狠狠97 > 色阁在线 >

久久精品成人免费观看97冰河给各人共享一篇大部分人都不会的手段

久久精品成人免费观看97

各人好,我是冰河~~

今天,冰河给各人共享一篇大部分人都不会的手段,那便是咱们我方脱手写一款属于我方的Maven插件。好了,径直插足今天的主题吧。

Maven插件的相关见地 插件坐标定位

插件与庸碌jar包相似包含坐标定位属性即:groupId、artifactId、version,当使用该插件时会从土产栈房库中搜索,淌若莫得则从汉典仓库下载,举例底下的建立所示。

<!-- 久久精品成人免费观看97独一定位到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 插件风物

以下是 2022 年的安全趋势(包括趋热与转冷),预计在新的一年里攻击的范围和复杂程度将会变得更加难以应对。

到2023年,中国500强企业将更优先考虑业务目标,而非基础设施的选择。30%新的工作负载将使用解决方案提供商特定的API来部署。

谷歌在安卓12中加入了功能开关,在SIM卡设置中可以启用或者禁用“允许2G”功能。

似乎每一年,量子计算都在向商业可行性迈进。

(2)设定packaging 为maven-plugin

(3)添加插件依赖

(4)编写插件完结逻辑

(5)打包构建插件

接下来,咱们就来完结自界说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插件的完结类。这里,我径直给出类的源代码,如下所示。

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

好了,今天就到这儿吧,我是冰河,咱们下期见!!