我正在将用C ++编写的简单控制台应用程序移植到Java中,以显示语言的相似程度以及如何移植代码。 我使用Eclipse导出了程序的可执行JAR。 这些JAR在使用java –jar命令运行时工作正常。 但是,从Windows资源pipe理器(双击)执行时,它们不能正常运行。 控制台窗口只是打开和closures迅速。
到目前为止唯一的解决scheme是使用batch file。 还有其他的select吗?
有一些选择:
System.in.read()
(再次在程序的末尾),这将等待,直到你键入一个字符,并命中输入。 这似乎是从命令行和注册表中使用的jre不一样(安装多个JRE时可能会发生这种情况)
你有没有检查你的Windows注册表什么是JRE用于运行可执行文件的jar? 您可以在Sun的网站上找到更多关于注册表设置的信息
在我看来,你的主类甚至没有被执行。 这将解释控制台窗口的快速打开/关闭。
或者有可能比java另一个程序有“jar”文件类型? 安装诺基亚软件后,发生在我身上。
使用批处理文件似乎是我最好的选择。 我想这就是为什么Eclipse有一个启动器。
将打开的程序更改为c:\ Program files \ java \ jre7 \ bin \ javaw.exe