Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何通过运行jar/exe文件在命令提示符下查看输出?_Java_Batch File_Jar_Cmd_Command Line Interface - Fatal编程技术网

Java 如何通过运行jar/exe文件在命令提示符下查看输出?

Java 如何通过运行jar/exe文件在命令提示符下查看输出?,java,batch-file,jar,cmd,command-line-interface,Java,Batch File,Jar,Cmd,Command Line Interface,我创建了一个jar,它从excel中读取值,进行一些操作,并将结果写回excel 当我运行这个罐子时,它工作得非常好。我还为jar创建了一个exe文件,它也运行得很好 然而,当计算excel每行数据的值时,我希望结果也显示在命令提示符上,我有syso语句 我可以通过创建一个批处理文件并通过.bat文件运行jar来实现这一点。 但是当我通过bat文件运行exe文件时,我无法看到cmd上的计算结果 有没有什么方法可以让我在运行时通过syso语句,在命令提示符下,双击exe文件来查看计算出的值 PS:

我创建了一个jar,它从excel中读取值,进行一些操作,并将结果写回excel

当我运行这个罐子时,它工作得非常好。我还为jar创建了一个exe文件,它也运行得很好

然而,当计算excel每行数据的值时,我希望结果也显示在命令提示符上,我有syso语句

我可以通过创建一个批处理文件并通过.bat文件运行jar来实现这一点。 但是当我通过bat文件运行exe文件时,我无法看到cmd上的计算结果

有没有什么方法可以让我在运行时通过syso语句,在命令提示符下,双击exe文件来查看计算出的值

PS:我不想通过cmd上的java-jar命令运行jar。
如果双击jar/exe,我希望计算结果显示在cmd上。

记录了如何从eclipse工具创建可运行jar文件的步骤。完成以下步骤后,您将得到一个可运行的jar文件。如果双击jar文件,它将通过命令提示符开始执行jar文件

创建一个批处理文件,并放置在系统中的任何路径下。在示例C:\Users\username\Desktop\test\my\u script.bat中

创建一个java项目。 创建用于执行批处理文件的java类。按照下面的代码指定批处理文件路径

package com.cmd.test;    
import java.io.IOException;
public class AutoExeJAR {
   public static void main(String[] args) {
    try{    
        Runtime r=Runtime.getRuntime();
         r.exec("cmd.exe /c start call C:\\Users\\username\\Desktop\\\test\\my_script");             
    }catch( IOException ex ){
        //Validate the case the file can't be accesed (not enought permissions)
 }}}
右键单击上面的java项目->导出->可运行Jar->在弹出窗口的启动配置下拉列表中选择上面的类文件->给出导出为可运行Jar文件的路径。注意:在这里选择类文件名是在双击jar文件后不久指定调用点

双击导出的可运行jar文件,该文件将自动执行批处理文件。 请同时参阅。
记下了如何从eclipse工具创建可运行Jar文件的步骤。完成以下步骤后,您将得到一个可运行的jar文件。如果双击jar文件,它将通过命令提示符开始执行jar文件

创建一个批处理文件,并放置在系统中的任何路径下。在示例C:\Users\username\Desktop\test\my\u script.bat中

创建一个java项目。 创建用于执行批处理文件的java类。按照下面的代码指定批处理文件路径

package com.cmd.test;    
import java.io.IOException;
public class AutoExeJAR {
   public static void main(String[] args) {
    try{    
        Runtime r=Runtime.getRuntime();
         r.exec("cmd.exe /c start call C:\\Users\\username\\Desktop\\\test\\my_script");             
    }catch( IOException ex ){
        //Validate the case the file can't be accesed (not enought permissions)
 }}}
右键单击上面的java项目->导出->可运行Jar->在弹出窗口的启动配置下拉列表中选择上面的类文件->给出导出为可运行Jar文件的路径。注意:在这里选择类文件名是在双击jar文件后不久指定调用点

双击导出的可运行jar文件,该文件将自动执行批处理文件。 请同时参阅。
Launch4J上有一个选项,可以选择在运行时是否在控制台上显示输出!我刚刚选择了它,结果在运行exe文件时显示在控制台上


谢谢大家的建议。

在Launch4J上有一个选项,可以选择是否在运行时在控制台上显示输出!我刚刚选择了它,结果在运行exe文件时显示在控制台上


谢谢大家的建议。

您使用什么工具将.jar转换为.exe?您对批处理文件满意吗?是否有任何工具可用于转换为exe文件?我正在使用Launch 4j-您使用什么工具将.jar转换为.exe文件?是否可以使用批处理文件?有没有什么工具可以用来转换为exe文件?我使用的是Launch4J-所以基本上,我正在创建另一个jar来运行批处理文件,该批处理文件执行我的实际jar文件,对吗?另外,我不想在java代码中硬编码bat文件的路径。因为它应该适用于任何用户,任何地点。只是抛出一个想法。您可以将可执行jar文件和bat文件放在同一个文件夹中。然后,在下面的代码示例中找到当前可执行jar文件路径。可以为批处理文件(如input.bat)使用公共文件名。CodeSource CodeSource=YourMainClass.class.getProtectionDomain.getCodeSource;File jarFile=new FilecodeSource.getLocation.toURI.getPath;字符串jarDir=jarFile.getParentFile.getPath;字符串batPath=jarDir+\\input;使用batPath字符串在r.exec…+batPath下执行;r、 execcmd.exe/c启动调用+batPath;基本上,我正在创建另一个jar来运行批处理文件,该批处理文件执行我的实际jar文件,对吗?另外,我不想在java代码上硬编码bat文件的路径。因为它应该适用于任何用户,任何地点。只是抛出一个想法。您可以将可执行jar文件和bat文件放在同一个文件夹中。然后,在下面的代码示例中找到当前可执行jar文件路径。可以为批处理文件(如input.bat)使用公共文件名。CodeSource CodeSource=Y
ourMainClass.class.getProtectionDomain.getCodeSource;File jarFile=new FilecodeSource.getLocation.toURI.getPath;字符串jarDir=jarFile.getParentFile.getPath;字符串batPath=jarDir+\\input;使用batPath字符串在r.exec…+batPath下执行;r、 execcmd.exe/c启动调用+batPath;