我正在使用nodenv来管理我的节点版本 在我的jhipster项目中,当我将我的应用程序打包到终端时:
mvn package -Pprod -Dmaven.test.skip=true
工作正常 但是当我使用相同的mvn命令从Intellij打包应用程序时,我得到了:
[INFO]
[INFO] --- yeoman-maven-plugin:0.5:build (run-frontend-build) @ tecfel ---
[INFO] node version :
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 5.429 s
[INFO] Finished at: 2018-03-14T14:12:04+01:00
[INFO] Final Memory: 47M/541M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.github.trecloux:yeoman-maven-plugin:0.5:build (run-frontend-build) on project tecfel: Error during : node --version: Cannot run program "node" (in directory "/home/myApp/Documents/workspace/tecfel"): error=2, Aucun fichier ou dossier de ce type -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal com.github.trecloux:yeoman-maven-plugin:0.5:build (run-frontend-build) on project tecfel: Error during : node --version
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:863)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
at org.codehaus.classworlds.Launcher.main(Launcher.java:47)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)
Caused by: org.apache.maven.plugin.MojoExecutionException: Error during : node --version
at com.github.trecloux.yeoman.YeomanMojo.executeCommand(YeomanMojo.java:129)
at com.github.trecloux.yeoman.YeomanMojo.logToolVersion(YeomanMojo.java:105)
at com.github.trecloux.yeoman.YeomanMojo.npmInstall(YeomanMojo.java:84)
at com.github.trecloux.yeoman.YeomanMojo.execute(YeomanMojo.java:68)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207)
有人知道为什么吗?
答案 0 :(得分:0)
你的问题是IntelliJ不使用nodenv。
您似乎运行了一个非常旧版本的JHipster构建过程,因为我们很久以前就停止使用yeoman-maven-plugin,考虑更新您的项目或者至少从最近生成的项目中复制/启发使用{{3使用这个插件的主要好处是,在prod配置文件中,它使用自己的项目中安装的node / npm二进制文件的副本,因此与运行的上下文完全隔离。