2017-03-06 63 views
0

我在写一个JavaFX应用程序,我直接通过Netbeans部署:right click on project->package as->image onlyJavaFX,Netbeans本地打包和命令行打印

这工作得很好。我需要实现一个带有多个参数的命令行界面,当然我想要一个'-h'选项,将帮助打印到命令行上。

我只是用System.out.println(),没什么特别的。

只要我不部署我的代码,这工作完全正常。一旦创建.exe文件,我的输出将不再在控制台上显示任何输出。

部署时发生的后台事件以及如何将输出传送到控制台?

我正在使用Netbeans 8.2和Java8。

+0

看看[System.console()](https://docs.oracle.com/javase/7/docs/api/java/io/Console.html) – TravisF

+0

@TravisF天然上的Windows可执行文件系统不能使用命令行输出,请参阅我的答案 – FibreFoX

+0

@FibreFoX我更想将控制台输出转发到文本框,因为EXE只是JavaFX的包装器,Java仍将输出到控制台,只是EXE不会不支持显示控制台的功能。 – TravisF

回答

0

这是不可能没有一个可执行selfbuild;)

本机启动/可执行程序不工作的方式,这是因为Windows的可执行文件包括他们是否是CLI应用程序或GUI的应用程序。

对于更详细的答案在这里看到:https://stackoverflow.com/a/34476175/1961102

生成的EXE文件是一个简单的Windows的可执行文件,没有 CLI-可执行文件显示在launcher-source-code,即 你不看的理由任何控制台输出,但在将流水线 插入某个文件时会产生结果。