Spring Boot 将web项目打包成jar运行

2020-06-23  本文已影响0人  嘉嘉嘉言丶

**1. 在src/main文件夹下创建webapp文件夹,将前端源码放入webapp下(并将webapp文件夹exclude掉,避免idea无法加载项目)**

**2. pom添加以下代码,使用maven管理前端项目**

```

            <plugin>

                <groupId>org.codehaus.mojo</groupId>

                <artifactId>exec-maven-plugin</artifactId>

                <executions>

                    <execution>

                        <id>npm install</id>

                        <phase>prepare-package</phase>

                        <goals>

                            <goal>exec</goal>

                        </goals>

                        <configuration>

                            <executable>npm</executable>

                            <arguments>

                                <argument>install</argument>

                            </arguments>

                            <workingDirectory>${basedir}/src/main/webapp</workingDirectory>

                        </configuration>

                    </execution>

                    <execution>

                        <id>npm run build</id>

                        <phase>prepare-package</phase>

                        <goals>

                            <goal>exec</goal>

                        </goals>

                        <configuration>

                            <executable>npm</executable>

                            <arguments>

                                <argument>run</argument>

                                <argument>build</argument>

                            </arguments>

                            <workingDirectory>${basedir}/src/main/webapp</workingDirectory>

                        </configuration>

                    </execution>

                </executions>

            </plugin>

```

**3. 添加以下代码将前端打包后文件复制到resources下的static文件夹(没有请手动创建)**

<!--copy文件到指定目录下 -->

            <plugin>

                <groupId>org.apache.maven.plugins</groupId>

                <artifactId>maven-resources-plugin</artifactId>

                <configuration>

                    <encoding>${project.build.sourceEncoding}</encoding>

                </configuration>

                <executions>

                    <execution>

                        <id>copy-spring-boot-webapp</id>

                        <!-- here the phase you need -->

                        <phase>validate</phase>

                        <goals>

                            <goal>copy-resources</goal>

                        </goals>

                        <configuration>

                            <encoding>utf-8</encoding>

                            <outputDirectory>${basedir}/src/main/resources/static</outputDirectory>

                            <resources>

                                <resource>

                                    <directory>${basedir}/src/main/webapp/dist</directory>

                                </resource>

                            </resources>

                        </configuration>

                    </execution>

                </executions>

            </plugin>

***上面两步操作均通过maven package命令完成,无需手动操作,执行完后即可以正常后端项目启动,启动后访问ip:port根目录可看到前端页面表示web项目启动成功,若失败请检查pom文件夹配置与webpack打包配置是否一致***

上一篇 下一篇

猜你喜欢

热点阅读