写点什么

关于 Java 微服务的打包问题

作者:Java你猿哥
  • 2023-04-20
    湖南
  • 本文字数:929 字

    阅读完需:约 3 分钟

Java 的微服务打包时产生的 jar 包,在运行的时候会报找不到主类清单之类的错误,这里记录一下解决方法

1、首先在父工程的 pom 文件下的放入下面的代码,引入相关插件

    <build>        <plugins><!--            <plugin>--><!--                <groupId>org.springframework.boot</groupId>--><!--                <artifactId>spring-boot-maven-plugin</artifactId>--><!--            </plugin>-->            <plugin>                <groupId>org.apache.maven.plugins</groupId>                <artifactId>maven-compiler-plugin</artifactId>                <version>3.1</version>                <configuration>                    <source>${java.version}</source>                    <target>${java.version}</target>                </configuration>            </plugin>            <plugin>                <artifactId>maven-surefire-plugin</artifactId>                <!-- 打包跳过单元测试 -->                <configuration>                    <skipTests>true</skipTests>                    <testFailureIgnore>true</testFailureIgnore>                </configuration>            </plugin>        </plugins>    </build>
复制代码

这里是不选择用 springboot 自带的打包插件,而是用了 Apache 的

2、然后再每一个微服务的 pom 文件下放入下面的代码,引入相关插件

<build>    <plugins>        <plugin>            <groupId>org.springframework.boot</groupId>            <artifactId>spring-boot-maven-plugin</artifactId>            <configuration>                <mainClass>com.example.authservice.AuthApplication</mainClass>                <goal>repackage</goal>            </configuration>        </plugin>
</plugins></build>
复制代码

这里必需要指定启动类的路径,每个模块设置对应的启动类路径,同时指定好打包方式为 jar

<packaging>jar</packaging>
复制代码

之后打开 maven 的面板,执行 package,在每个模块下的 target 目录里生成一个 jar 包



之后进入 cmd 终端命令窗口,执行 java -jar jar 包 命令即可运行起来


(中文乱码可先忽视)

用户头像

Java你猿哥

关注

一只在编程路上渐行渐远的程序猿 2023-03-09 加入

关注我,了解更多Java、架构、Spring等知识

评论

发布
暂无评论
关于Java微服务的打包问题_Java_Java你猿哥_InfoQ写作社区