首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在nodejs和java之间建立通信?

如何在nodejs和java之间建立通信?
EN

Stack Overflow用户
提问于 2015-07-29 21:36:53
回答 1查看 94关注 0票数 0

我有Foo.java文件

代码语言:javascript
复制
package mypack;
class Foo {
  public int add (int a, int b) {
    return a+b;
  } 
}

和一个Bar.java

代码语言:javascript
复制
package mypack;
class Bar {
  public static void main (String args[]) {
    Foo instance = new Foo();
    System.out.println(Foo.add(2, 3));
  }
}

我有一个server.js文件,在其中我使用贝壳类读取输出并在终端外壳中打印它。

代码语言:javascript
复制
var shelljs = require('shelljs');

shelljs.exec('java -cp bin mypack.Bar', function (code, output) {
   console.log(output);
});

当我运行node server.js时,我得到了输出

代码语言:javascript
复制
5
5

第一个是由java print语句打印的,第二个是由nodejs控制台语句打印的。我的问题是,如何修改java输出,使其只由节点读取而不打印在shell中?因此,我只能从节点控制台语句中获得输出。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-29 21:43:52

看起来有一个silent选项,它告诉它不要将程序输出输出到控制台:

代码语言:javascript
复制
shelljs.exec('java -cp bin mypack.Bar', {silent: true}, function (code, output) {
   console.log(output);
});

看一看文档

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31711604

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档