1

我正在尝试使用节点模块启动一个 mockserver-grunt。我的问题是出现以下错误:

events.js:160
  throw er; // Unhandled 'error' event
  ^

 Error: spawn java ENOENT
    at exports._errnoException (util.js:1022:11)
    at Process.ChildProcess._handle.onexit 
 (internal/child_process.js:193:32)
    at onErrorNT (internal/child_process.js:359:16)
    at _combinedTickCallback (internal/process/next_tick.js:74:11)
    at process._tickCallback (internal/process/next_tick.js:98:9)
    at Module.runMain (module.js:609:11)
    at run (bootstrap_node.js:420:7)
    at startup (bootstrap_node.js:139:9)
    at bootstrap_node.js:535:3

我知道这里有很多关于这个错误的问题,但是我尝试了很多答案,但都没有奏效。这是我第一次使用 node 和 mockserver。例如我试过这个答案

我的输出是:

{ '0': 'java',
  '1': 
    [ '-Dfile.encoding=UTF-8',
    '-Dmockserver.logLevel=WARN',
    '-jar',
    [ 'mockserver-netty-3.10.6-jar-with-dependencies.jar' ],
    '-serverPort',
    5000 ],
  '2': { stdio: [ 'ignore', 'ignore', [Object] ] } }

我的 mock_server.js 看起来像这样:

var mockserver = require('mockserver-grunt'); mockserver.start_mockserver({serverPort: 5000});

我检查了,5000 端口上没有运行其他程序。

我的 package.json 看起来像这样:

{
 "name": "test",
 "version": "1.0.0",
 "description": "## Required environment vars",
 "main": "mock_server.js",
 "author": "",
 "license": "ISC",
 "dependencies": {
   "bower": "^1.7.9",
   "grunt": "1.0.1",
   "grunt-cli": "1.2.0",
   "mockserver-grunt": "^1.0.41"
}

我还从头开始安装了一个项目,并且发生了同样的事情。非常感谢任何帮助。谢谢。

4

1 回答 1

1

好的,这就是我解决此问题的方法。我尝试在本地运行:

java -Dmockserver.logLevel=INFO -jar ~/Downloads/mockserver-netty-3.10.6-jar-with-dependencies.jar -serverPort -5000

它看起来像:

bash: java: command not found

安装java后,我启动了服务器 node mock_server.js,一切顺利。

所以,是的,我知道这是一个愚蠢的问题......

于 2017-05-23T12:36:30.913 回答