build插件

1.maven-source-plugin

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-source-plugin</artifactId>
  <version>3.2.1</version>
  <executions>
      <execution>
          <id>attach-sources</id>
          <goals>
              <goal>jar</goal>
          </goals>
      </execution>
  </executions>
</plugin>

主要用于将源码打成一个jar包,用途是上传私服的时候需要用到这个,正常引用的时候不影响
image

2.maven-javadoc-plugin

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-javadoc-plugin</artifactId>
  <version>3.4.1</version>
  <executions>
      <execution>
          <id>attach-javadoc</id>
          <goals>
              <goal>jar</goal>
          </goals>
      </execution>
  </executions>
</plugin>

主要用于将写的注释等东西达成一个jar包,文档说明,正常引用的时候用不到,上传私服可能用到
image

3.maven-compiler-plugin

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-compiler-plugin</artifactId>
  <version>3.10.1</version>
  <configuration>
      <source>1.8</source>
      <target>1.8</target>
  </configuration>
 </plugin>

主要用于将项目中的所有文件进行编译,将.java文件变成.class文件,这个只是在最后的target目录下的classes目录中生成文件内容
image

4.maven-jar-plugin

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-jar-plugin</artifactId>
  <version>3.2.2</version>
  <configuration>
      <archive>
          <manifest>
              <mainClass>com.example.mysqlsdk.MysqlQuery</mainClass>
          </manifest>
      </archive>
  </configuration>
</plugin>

将编译后的文件打包成一个jar,用于其他项目引入,并指定其中的主类,这个就是最后被人引用的jar
image

5.maven-assembly-plugin

使用这个插件生成fat jar,来把依赖也都打入到一个jar里,解决部分引入放不会关联下载问题

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-assembly-plugin</artifactId>
  <version>3.3.0</version>
  <configuration>
      <descriptorRefs>
          <descriptorRef>jar-with-dependencies</descriptorRef>
      </descriptorRefs>
      <archive>
          <manifest>
              <mainClass>com.example.mysqlsdk.MysqlQuery</mainClass>
          </manifest>
      </archive>
  </configuration>
  <executions>
      <execution>
          <id>make-assembly</id>
          <phase>package</phase>
          <goals>
              <goal>single</goal>
          </goals>
      </execution>
  </executions>
</plugin>

image

posted @ 2025-11-06 15:39  SpecialSpeculator  阅读(7)  评论(0)    收藏  举报