douzong6649 2015-12-28 01:04
浏览 88

如何触发Java应用程序(来自Google GO / golang子进程的java -jar <app name>

I'm trying to trigger java command line application as a sub process from golang. For some reason it failed and actually I do not get java APP interface when I start it from GO. It wait for few sec and terminate with error code "can not connect ... " Here is a code I tried to use:

package main
import (
    "fmt"
    "os/exec"
)
func main() {
    start_java_app_test()
}
func start_java_app_test() {
    cmd_prep := "java -Xmx2g -jar test_app.jar"
    cmd_output, err := exec.Command("bash", "-c", cmd_prep).Output()
    if err != nil {
        fmt.Println(err)
    }
    fmt.Println(vba_ssh_cmd_output)
}

If we try just to use --> cmd_prep := "java -version" <-- it will fail again. It should give me output like << snip >> $ java -version java version "1.8.0_65" Java(TM) SE Runtime Environment (build 1.8.0_65-b17) Java HotSpot(TM) 64-Bit Server VM (build 25.65-b01, mixed mode) << /snip >>

The normal syntax like --> cmd_prep := "ls -l" <-- works fine. Any clue ? What might be the reason here ? Thanks in advance, .C

  • 写回答

1条回答 默认 最新

  • dongyi5817 2015-12-29 10:19
    关注

    It works very well with 'CombinedOutput' :)

    $ go run TestCombinedOutput.go 
    java version "1.8.0_65"
    Java(TM) SE Runtime Environment (build 1.8.0_65-b17)
    Java HotSpot(TM) 64-Bit Server VM (build 25.65-b01, mixed mode)
    

    Thanks a lot.

    Cheers,

    .C

    评论

报告相同问题?

悬赏问题

  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突