idea编译打包前端vue项目

网上download了一个前端vue项目 第一次接触前端记录一下编译打包遇到的问题

1、idea前端项目打包一般是依赖

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

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

<version>3.0.0</version>

这个maven插件 里面可以定义要执行的打包步骤 比如我的工程里面就有如下三个过程:

<execution>

<id>saturn-web</id>

<phase>prepare-package</phase>

<goals>

<goal>exec</goal>

</goals>

<configuration>

<executable>sh</executable>

<commandlineArgs>npm-config.sh</commandlineArgs>

</configuration>

</execution>

<execution>

<id>exec-npm-install</id>

<phase>prepare-package</phase>

<goals>

<goal>exec</goal>

</goals>

<configuration>

<executable>npm</executable>

<arguments>

<argument>install</argument>

</arguments>

</configuration>

</execution>

<execution>

<id>exec-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>

</configuration>

</execution>

1、执行一个.sh脚本 2、运行npm install 3、运行npm run build

1、执行第一个过程的时候报错:Command execution failed.: Cannot run program "sh"

这个很好理解 因为我是Windows的环境是执行不了shell脚本的,可能别人开发的时候用的mac电脑;后续我也找了很多变通的方法试图能在编译的时候能用直接用这个shell脚本,比如搜索"idea 运行 shell脚本"这样的关键字 大概会让你装bashsupport插件(只支持老版本的idea 新版本的idea只能用bashsupport pro但是是收费的,目前也没有可替代的其他插件) 或者在设置Tools>terminal的Shell path为 git bash的路径。其实都没什么卵用。

究其原因还是运行在windows系统下没有shell解释器 因为当运行maven在执行 sh xxx.sh这条命令时是调用的操作系统的命令,如果环境变量中没有一个叫sh的程序,自然是无法运行。

最后解决的办法是老老实实把别人的shell脚本 自己根据windows batch的语法改成windows 的bat脚本。

<execution>

<id>saturn-web1</id>

<phase>prepare-package</phase>

<goals>

<goal>exec</goal>

</goals>

<configuration>

<executable>npm-config.bat</executable>

</configuration>

</execution>

2、执行第二个 npm install的时候坑就更多了一开始提醒我没有装python,报错跟上边类似Command execution failed.: Cannot run program "python"

好吧我装,装了一个python3的版本,设置好环境变量,又提示我版本不对 要装python2 无语继续再装一个python 2.7版的 装好了重启生效。

然后又提示我node sass下载失败

verbose stack Error: [email protected] postinstall: `node scripts/build.js`

verbose stack Exit status 1

等等 咨询前端同事后告知可能是node版本不匹配,因为我之前做另一个项目时node版本装的比较高,又下载一个nvm 然后切换到比较低的node 版本。

🆗 这下报错又变了 变成Cannot run program "npm" ,检查环境变量时配置了的 重启也没有用。

后来网上查询到要以"管理员身份运行"打开 idea,因为我这idea也是新装的, ok 终于可以成功打包了,貌似只要有一次以"管理员身份运行"打开 idea就行 后来退出重新双击打开idea再打包也没有再报错。

相关推荐
多云的夏天7 分钟前
前端:VUE-(0)-环境搭建和helloworld
前端·javascript·vue.js
Dontla11 分钟前
BootCDN介绍(Bootstrap主导的前端开源项目免费CDN加速服务)
前端·开源·bootstrap
90后小陈老师42 分钟前
WebXR教学 07 项目5 贪吃蛇小游戏
前端·数码相机
一口一个橘子1 小时前
[ctfshow web入门] web118
前端·web安全·网络安全
GanGuaGua1 小时前
Vue3:脚手架
前端·javascript·css·vue.js·vue
weixin_431600441 小时前
使用 Vue Tour 封装一个统一的页面引导组件
javascript·vue.js·ecmascript
鸡吃丸子2 小时前
常见的实时通信技术(轮询、sse、websocket、webhooks)
前端·websocket·状态模式
胡斌附体2 小时前
vue添加loading后修复页面渲染问题
前端·javascript·vue.js·渲染·v-if·异步加载
让代码飞~3 小时前
maven项目, idea右上角一直显示gradle的同步标识, 如何去掉
java·maven·intellij-idea
张扬飞舞3 小时前
IntelliJ IDEA克隆项目失败的解决方法
java·ide·intellij-idea