umi是阿里的一个 前端框架,maven想要打包umi框架,必须要用到一个maven插件frontend-maven-plugin。但是不知道为什么在我的本地指定outputPath输出路径时并没有生效。还是输出到umi的默认打包路径/dist
build --outputPath ${project.build.outputDirectory}/META-INF/resources
maven配置如下:👇👇👇
<build>
<plugins>
<plugin>
<groupId>com.github.eirslett</groupId>
<artifactId>frontend-maven-plugin</artifactId>
<version>1.8.0</version>
<configuration>
<npmRegistryURL>https://registry.npm.taobao.org</npmRegistryURL>
</configuration>
<executions>
<execution>
<phase>generate-sources</phase>
<id>install node and yarn</id>
<goals>
<goal>install-node-and-yarn</goal>
</goals>
<configuration>
<nodeVersion>v10.16.2</nodeVersion>
<yarnVersion>v1.17.3</yarnVersion>
<nodeDownloadRoot>https://npm.taobao.org/dist/</nodeDownloadRoot>
<yarnDownloadRoot>https://npm.taobao.org/mirrors/yarn/</yarnDownloadRoot>
</configuration>
</execution>
<execution>
<phase>generate-sources</phase>
<id>yarn install</id>
<goals>
<goal>yarn</goal>
</goals>
<configuration>
<arguments>install</arguments>
</configuration>
</execution>
<execution>
<phase>generate-sources</phase>
<id>yarn build</id>
<goals>
<goal>yarn</goal>
</goals>
<configuration>
<arguments>build --outputPath ${project.build.outputDirectory}/META-INF/resources</arguments>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
</plugin>
</plugins>
</build>
为了解决这个问题,我采用了一种折中的方法,在umi的配置文件.umirc.ts中去指定outputPath的输出路径。最终终于实现了maven统一打包umi页面。
outputPath: "./src/main/resources"