2016-03-25 6 views
1

Я создал банку, которая считывает значения из excel, делает некоторые манипуляции и записывает результаты обратно в excel.Как увидеть вывод в командной строке, запустив файл jar/exe?

Когда я запускаю банку, она отлично работает. Я также создал exe-файл для фляги, и он тоже очень хорошо работает.

Однако, пока значения вычисляются для данных по каждой строке excel, я хочу, чтобы результат также отображался в командной строке, для которого у меня есть инструкции syso.

Я могу добиться этого, создав командный файл и запустив банку через .bat-файл. Но когда я запускаю exe-файл через файл bat, я не могу видеть вычисления на cmd.

Есть ли способ увидеть вычисленные значения во время выполнения через инструкции syso в командной строке, просто дважды щелкнув файл exe?

PS: Я не хочу запускать банку через java -jar команду на cmd. Я хочу, чтобы результаты вычислений отображались на cmd, если я просто дважды щелкните jar/exe.

+0

http://stackoverflow.com/a/15700931/235710 –

+1

Какой инструмент вы используете для преобразования .jar в .exe? – lit

+0

Вы в порядке с командным файлом? Есть ли какой-либо инструмент, который вы используете для преобразования в exe-файл? – Shaan

ответ

0

Существует вариант на Launch4J выбрать, если выход должен отображаться на консоли во время выполнения! Я только что выбрал его, и результаты отображаются на консоли во время запуска exe-файла.

Благодарим вас за предложения.

0

Отмеченные шаги, как создать файл Runnable Jar из инструмента eclipse. Когда вы делаете это с помощью нижележащих шагов, вы получите файл runnable jar. Если вы дважды щелкните файл jar, он начнет выполнение вашего файла jar с помощью командной строки.

  • Создайте командный файл и поместите его под любой путь в вашей системе. В примере "C: \ Users \ имя пользователя \ Desktop \ тест \ my_script.bat"

    @ECHO OFF 
    set java_path=D:\Java\jdk1.6.0_41 
    
    cd /d D:\rootFolder\extractData 
    
    %java_path%\bin\java -jar yourJARfilename.jar 
    
    cmd /K 
    
    EXIT /B 0 
    
    • Создание проекта 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 -> Export -> Runnable Jar -> (выберите вышеуказанный файл класса в конфигурации запуска выпадающего списка во всплывающем окне) -> Дайте путь для экспорта в работоспособной jar файл. ПРИМЕЧАНИЕ.: Выбор имени вашего класса здесь указывает на указание момента вызова сразу после двойного щелчка файла jar.

    • Двойной щелчок по этому экспортированному исполняемому файлу jar, который автоматически выполняет пакетный файл.
    • См. Также link.
+0

Так что, в основном, я создаю еще одну банку для запуска командного файла, который выполняет мой фактический файл jar, правильно? –

+0

Кроме того, я не хочу жестко кодировать путь к файлу bat в моем java-коде. Потому что он должен работать для любого пользователя в любом месте. –

+0

Просто бросая идею. Вы можете разместить исполняемый файл jar и bat-файл в той же папке. Затем найдите текущий путь исполняемого файла jar-файла, используя пример кода. Вы можете использовать общее имя файла для пакетного файла, такого как input.bat. ** CodeSource codeSource = YourMainClass.class.getProtectionDomain(). GetCodeSource(); Файл jarFile = новый файл (codeSource.getLocation(). ToURI(). GetPath()); Строка jarDir = jarFile.getParentFile(). GetPath(); Строка batPath = jarDir + "\\ input"; ** Используйте строку batPath для выполнения под ** r.exec (".......," + batPath); ** – Shaan

Смежные вопросы