Cannot run в program by clicking on its icon whereas it works in command line

Заметьте that this is an issue under Ubuntu 14.04. It is not an issue with any other Linux distribution. There is не good reason for this to be closed...


I first wrote my game under Магия Linux, and then tested it on Ubuntu 14.04 LTS to be sure that it works correctly. You хан find the Были должны packages here: http://tuer.sourceforge.net/en/play/

When I enter "tuer" in command line, it runs my game эксперт expected but when I click on the icon, it doesn't run my game. "Конечный" Setting the attribute to "true" in tuer.desktop just шоу the терминал very quickly but не ошибка message appears. Простой The desktop file is really: http://sourceforge.net/p/tuer/code/HEAD/tree/pre_beta/jndt.xml#l952

There is в symbolic соединение /usr/bin/tuer (in the path) to /usr/share/tuer/tuer. I don't get why it works only in command line under Ubuntu. Maybe the problem ты ешь from the рукописный шрифт: http://sourceforge.net/p/tuer/code/HEAD/tree/pre_beta/jndt.xml#l637

I assume that it's possible to open the desktop file the same way the desktop менеджер does with gtk-launch, xdg-open or gvfs-open.

What is the issue here?

Update: I have driven the .desktop поля executable in order to удали тебя в possible root вызвал эксперт Серг suggested. гve just uploaded the new Debian packages (obviously совместимый with Ubuntu).

0
задан 29 October 2015 в 22:13

1 ответ

Я должен был заменить следующий сценарий:

#!/usr/bin/bash
#code snippet written by Dave Dopson: http://stackoverflow.com/a/246128
SOURCE="${BASH_SOURCE[0]}"
while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
    APP_LAUNCHER_DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
    SOURCE="$(readlink "$SOURCE")"
    [[ $SOURCE != /* ]] && SOURCE="$APP_LAUNCHER_DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
done
APP_LAUNCHER_DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
$APP_LAUNCHER_DIR/jre/bin/java -server -Xmx256m -XX:MaxDirectMemorySize=128M -Djava.ext.dirs= -jar $APP_LAUNCHER_DIR/tuer.jar

/usr/share/tuer/jre/bin/java -server -Xmx256m -XX:MaxDirectMemorySize=128M -Djava.ext.dirs= -jar /usr/share/tuer/tuer.jar

, потому что в отличие от терминала, Единица игнорирует первую строку и пытается интерпретировать мой удар сценарий как сценарий тире . Это показало однажды "5: Плохая замена", другое время "** (gtk-launch:27745): ПРЕДУПРЕЖДЕНИЕ **: не Мог зарегистрироваться в шине доступности: не получил ответ. Возможные причины включают: удаленное приложение не отправило ответ, политика безопасности шины сообщения заблокировала ответ, тайм-аут ответа истек, или сетевое соединение было повреждено". другое время "никакой такой файл или каталог" и это утверждало, что выполнение дочернего процесса "tuer" было прервано без любых подробных объяснений.

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

Заключение: Используйте общее подмножество Posix Bash и Тире, если Вы хотите избежать проблемы в соответствии с Ubuntu даже при том, что сценарий работает в командной строке.

0
ответ дан 28 July 2019 в 10:14

Другие вопросы по тегам:

Похожие вопросы: