Не удалось открыть jarfile

1

У меня есть программа С#, которая предоставляет доступ к java-программе с помощью tcp. В моей программе на С# я запускаю java-программу по этой строке кода:

var process = new Process
{
  StartInfo =
  {
      UseShellExecute = false,
      CreateNoWindow = false,
      FileName = "cmd.exe",
      Arguments = (@"/c java -ms16m -mx512m -jar pathToJavaApp/javaApp.jar 3562")
  }
};

Это прекрасно работает, у меня не было проблем до сих пор. Я установил свою программу на компьютер коллеги. Теперь я получаю сообщение об ошибке: Не удалось получить доступ к файлу jar.

Итак, я попробовал в командной строке "java -jar javaApp.jar", и javaApp запускается сразу.

Я попытался запустить программу как администратор, такую ​​же ошибку. (Windows Vista)

На данный момент я понятия не имею, что проблема может быть.

Теги:

3 ответа

2
Лучший ответ

Я предполагаю, что путь к файлу jar содержит пробелы. Вам нужно процитировать его. Например:

Arguments = "/c java -ms16m -mx512m -jar \"" + pathToJavaApp 
    + "\"/javaApp.jar 3562"
  • 0
    var pathJava = Application.StartupPath + "\\ pathToJavaApp \\ javaApp.jar"; так создается мой путь перед передачей его процессу
  • 0
    может быть, это внутри application.startuppath, который содержит пробелы
Показать ещё 1 комментарий
0

Чтобы узнать больше о том, что происходит, измените свои аргументы на:

  Arguments = (@"/c java -verbose -ms16m -mx512m -jar pathToJavaApp/javaApp.jar 3562")

Таким образом вы можете увидеть, что он пытается загрузить, и посмотреть, правильно ли работает Jon Skeet.

0

2 вещи -

  • it -Xmx и -Xms, not -ms, -mx.

  • Загружает ли ваша программа какие-либо дополнительные банки? возможно, они существуют на компьютере ваших коллег, но не на том, на котором он не будет работать.

(хотя ответ Джона Скита выглядит скорее)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню