1

Why is this code not returning any results?

Process.run('java', ['-mx300m -classpath stanford-postagger/stanford-postagger.jar edu.stanford.nlp.tagger.maxent.MaxentTagger -model stanford-postagger/models/wsj-0-18-bidirectional-nodistsim.tagger -textFile stanford-postagger/sample-input.txt']).then((ProcessResult results) {
    print(results.stdout);
});

I get no error when the code is executed either.

4

1 回答 1

3

这似乎是一个常见的 Java 错误。将最小和最大堆大小设置为相同的值是个好主意。无论如何,不​​要让最小堆大小超过最大堆大小。

注意:第二个参数Process.run是一个数组。为每个命令行参数使用一个元素,而不是只包含一个长字符串的数组。

Process.run('java', [
  '-Xms300m', // Set minimum and maximum heap size to the same value
  '-Xmx300m', // Set minimum and maximum heap size to the same value
  '-classpath',
  'stanford-postagger/stanford-postagger.jar',
  'edu.stanford.nlp.tagger.maxent.MaxentTagger',
  '-model',
  'stanford-postagger/models/wsj-0-18-bidirectional-nodistsim.tagger',
  '-textFile',
  'stanford-postagger/sample-input.txt'
]).then((ProcessResult results) {
  print(results.stdout);
  print(results.stderr);
})
.catchError((e) {
  print(e);
});
于 2013-09-21T16:09:02.167 回答