想在spring-boot运行时运行exec-maven-plugin

时间:2017-03-12 07:55:48

标签: maven spring-boot exec-maven-plugin

我的Spring-boot项目结构如下 -Project - src - main - java - resources - webapp - test - frontend - src - static - config - package.json - (after "npm install") node_modules - (after "npm run build") dist

我想做的是

  1. 安装项目时,运行" npm install"

  2. 当" spring-boot:run"运行,运行" npm run build"并将前面/ dist中的内容移动到/ main / webapp

  3. 这是我的pom.xml

        <build>
        <pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
    
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>exec-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <id>exec-npm-install</id>
                        <phase>generate-sources</phase>
                        <configuration>
                            <executable>npm</executable>
                            <workingDirectory>./frontend</workingDirectory>
                            <arguments>
                                <argument>install</argument>
                            </arguments>
                        </configuration>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
        </pluginManagement>
    </build>
    

    我不知道如何触发exec-npm-install exection 使用Eclipse maven build,我尝试了generate-sources,spring-boot:运行,安装和编译,包但它没有运行。

    我想知道我应该放什么命令,以便在&#34; spring-boot:run&#34;

    时移动dist

1 个答案:

答案 0 :(得分:0)

很少 -

  • 正如@khmarbaise指出的那样,您应该将<plugins>树移出<pluginManagement>,并使用<version>替换您正在使用的插件。

  •   

    我不知道如何触发exec-npm-install exection

由于执行与执行的generate-sources阶段相关联。如果您尝试从项目目录的命令行执行mvn generate-sources,则应触发执行。同时执行mvn testmvn installmvn package应该是必要的。为此,请查看Maven - Lifecycle Reference

  •   

    我想知道我应该放什么命令,什么时候移动dist   “弹簧引导:运行”

如果要将资源复制到/webapp目录,您应该查看maven-resources-plugin并相应地更改其相位。