繁体   English   中英

如何运行将图像作为参数在java中的应用程序的批处理文件

[英]How to run a batch file of an application that takes images as arguments in java

我有一个批处理文件run.bat ,它需要很多参数才能运行。 它是名为GeoMatch的应用程序的一部分,我将GeoMatch.exe与.bat文件放在同一文件夹中。

为了运行应用程序,我需要运行批处理文件。

通过在Windows中使用命令提示符,我运行批处理文件,如下所示:

 C:\programs\test\GeoMatch_demo>GeoMatch -t template.jpg -1 10 -h 100 -s search1.
 jpg -m 0.7 -g 0.9

我得到了我想要的输出。 但是,当我尝试从我的Java Application运行相同时,我没有得到所需的结果。

我的Java代码:

   import java.io.*;
   import java.lang.*;

  public class BatchDemo
    { 
       public static void main(String args[]) throws IOException
      { 
        try{
         String cmd;

           try { 

         String[] command = { "cmd.exe", "/C", "Start", "C:\\programs\\test\\GeoMatch_demo\\run.bat","C:\\programs\test\\GeoMatch_demo\\Search1.jpg","C:\\programs\\test\\GeoMatch_demo\\template.jpg"};
           Runtime r = Runtime.getRuntime();
           Process p = r.exec(command);
           p.waitFor();

            } catch (Exception e) 
            {

            System.out.println("Execution error");} 
        }
      catch(Exception e)
       {
     e.printStackTrace();
      }
  }
}

另外,要运行此.bat文件,我们需要3个DLL与.bat文件位于同一文件夹中。 我已经在我的Java项目中添加了这3个DLL,但仍然没有得到所需的结果。

有人能帮我吗 ?

提前致谢

当您从java代码执行bat文件时,您不会更改cmd的当前目录,这意味着您实际上并不在C:\\\\programs\\\\test\\\\GeoMatch_demo\\\\ 所以无法找到exe文件。 如果在批处理文件中引用具有绝对路径的exe文件,则问题应该消失。

尝试将路径C:\\ programs \\ test \\ GeoMatch_demo添加到PATH环境变量中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM