用了goland尝试调式但发现调用java代码的"os/exec"的里面的底层源码难看懂且很多,然后对报错的提示进行查询发现应该是对于java代码需要从标准输入中获取数据,(我打包的java代码输入有重复部分即需要进行输入三次项目的绝对路径和一次需要的applicationname的设置),go貌似需要为每次输入提供数据,网上查的方法是对于被调用的java 程序需要从命令行读取输入时,可以在 Go 程序中创建一个管道,并将所需的输入写入这个管道。这样,Java 程序就可以从它的 System.in 读取到这些输入,就像用户在命令行中手动输入一样。”但试了很多次依旧java程序中的scanner在尝试读取输入时未找到任何可用的输入行。
后面尝试优化一下原来的java代码让其只需输入一次项目的绝对路径和需要设置的application.name即可,但目前还没优化好,就弄了个简单的java程序来做试验发现能够起到预期效果,所以目前要做的事情就是把原本的java代码输入简化,然后在想办法通过管道输入给java需要的数据。