запуск файла .sh внутри сервера Grails - PullRequest
1 голос
/ 31 мая 2011

Я пытаюсь запустить bash-файл (.sh) для преобразования некоторых фотографий на моем сервере Grails, мой код следующий для выполнения этой задачи:

        def folderTo = grailsAttributes.getApplicationContext().getResource("/files/").getFile()
        def f = new File(folderFrom.toString())
        def cmd = '/bin/bash /var/lib/tomcat6/webapps/malibueventapp-qa/uploads/convertPhoto.sh /var/lib/tomcat6/webapps/malibueventapp-qa/uploads /var/lib/tomcat6/webapps/malibueventapp-qa/files'
        def process = runtime.exec(cmd, null, f);

проблема в том, что когда я запускаю его на сервере, я получаю следующую ошибку:

Cannot run program "/bin/bash" (in directory "/var/lib/tomcat6/webapps/malibueventapp-qa/uploads"): java.io.IOException: error=12, Cannot allocate memory

это единственное сообщение об ошибке, которое я получаю! так что понятия не имею, что делать!

некоторые предложения?!

спасибо

Ответы [ 2 ]

2 голосов
/ 31 мая 2011

Звучит так, будто ты не один:

Как решить "java.io.IOException: error = 12, Невозможно выделить память", вызывая Runtime # exec ()?

Вышеуказанная тема обеспечивает (возможное) решение вашей проблемы, дает ей шанс.

0 голосов
/ 31 мая 2011

просто чтобы подвести итог, что я сделал!

Я увеличил объем подкачки: http://www.linux.com/learn/tutorials/442430-increase-your-available-swap-space-with-a-swap-file

, а также работает:

echo 1 > /proc/sys/vm/overcommit_memory

ура!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...