Я пытаюсь выполнить EXE в Java, который разработан в Dotnet - PullRequest
0 голосов
/ 09 мая 2018

Код в java был создан для запуска файла .exe, созданного на платформе .NET, и было показано, что код работает успешно. Процесс даже показал себя живым при вызове с помощью функции isAlive (), но не запускается. .Exe не запускался, т.е. нигде не отображался в диспетчере задач. Также я проверил это с помощью метода waitFor ().

Далее мне нужно запустить это на сервлете Java, пожалуйста, предложите мне, если я могу сделать, чтобы сделать этот запуск, заранее спасибо

Код следующий: -

public static void main(String[] args) {
    try {
        ProcessBuilder pb = new ProcessBuilder("D:\\J2EEeclipse-workspace\\TARecruiter\\WebContent\\WEB-INF\\Debug\\Sharpenter.RP.UI.Console.exe");
        Process p=pb.start();
        System.err.println( p.waitFor());
    } catch (IOException | InterruptedException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}

1 Ответ

0 голосов
/ 09 мая 2018

Приведенный ниже фрагмент кода будет работать и инициировать процесс. Который можно просмотреть в диспетчере задач. Чтобы это работало, создайте код .java с предоставленным фрагментом в папке, где находится файл .exe, и запустите код. Теперь вы можете сделать этот код потоком и вызывать его в любом месте вашей программы, чтобы заставить его работать. Это, конечно, не окончательное решение, но до тех пор, пока я не выясню истинную причину, продолжаю работать.

try {
Process 
 p=Runtime.getRuntime().exec("Sharpenter.ResumeParser.UI.Console.exe");
                       try{    p.waitFor();
                          }catch (InterruptedException e) {
 // TODO Auto-generated catch block
 e.printStackTrace();
}

                              System.out.println("Done.");

 } catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...