侧边栏壁纸
  • 累计撰写 2,046 篇文章
  • 累计创建 73 个标签
  • 累计收到 20 条评论

目 录CONTENT

文章目录

Maven打普通的

大猿本猿
2022-04-11 / 1,622 阅读 / 0 字

工作中有时候需要打一个普通的java包进行测试,像一些socket或者线程测试等等,急需打包测试经常难倒小伙伴们。这里分享一下如何进行普通的java项目打包。

这里采用spring-boot-maven-plugin插件来进行打包,spring-boot-maven-plugin打包的优缺点如下:

  • 优点:简单快捷,使用其他打包插件要么是没法加载第三方类,要么是少文件等等,配置比较复杂。
  • 缺点:打包入了一些没有必要的springboot包。

引入spring-boot-maven-plugin插件

mainClass属性中定义主类,要不然会报清单中没有主类。

<build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>8</source>
                    <target>8</target>
                </configuration>
            </plugin>

            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <mainClass>devtao.netty.NettyServer</mainClass>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

        </plugins>
    </build>

打包执行

选择执行生命周期中的package,而非插件springboot里的repackage。

若执行springboot插件中的repackage则会报错:Source file must not be null。

正确的打包方法是:

直接使用maven的package命令,即可完成打包,若有新的内容添加,可以使用spring-boot-maven-plugin的repackage命令。

image

打包成功输出:

image

运行

java -jar xxx.jar