Я пытаюсь запустить другую программку из Java кода:Runtime.getRuntime() Exec() вопрос
String[] command = {"gdal_polygonize.py", "/home/user/myoldfiles/proceeded.tiff", "-mask", "/home/user/myoldfiles/biomass_02.08.14.tif", "-f", "'ESRI Shapefile'", "/home/user/myoldfiles/proceeded.shp", "DN"};
Process p = Runtime.getRuntime().exec(command);
У меня нет файла proceeded.shp создан в/главном/пользователе/myoldfiles/ Вывод команды, полученный с BufferedReader выглядит следующим образом:
Creating output /home/user/myoldfiles/proceeded.shp of format 'ESRI Shapefile'.
Когда я запускаю следующую команду в терминале (Ubuntu)
gdal_polygonize.py '/home/user/myoldfiles/proceeded.tiff' -mask '/home/user/myoldfiles/biomass_02.08.14.tif' -f 'ESRI Shapefile' '/home/user/myoldfiles/proceeded.shp'
Отпечатки
Creating output /home/user/myoldfiles/proceeded.shp of format ESRI Shapefile.
0...10...20...30...40...50...60...70...80...90...100 - done.
И успешно создает файл continueed.shp. Что я делаю неправильно в Java-коде?
Постарайтесь предоставить полный путь к: 'gdal_polygonize.py' – alfasin
« gdal_polygonize.py »- это команда типа« ls »или« cd » –
Это должно дать вам ошибку о том, что происходит не так, например' не может найти файл gdal_polygonize.py' или что-то в этом роде ... вы получили какую-то ошибку? если так, пожалуйста, отредактируйте – vlatkozelka