LINUX.ORG.RU

запуск программы не удовлетворяет.


0

0

в общем есть программка находится в директории /home/user/prog/blabla.jar

создал кнопку запуска на панели для нее - java -jar /home/user/prog/blabla.jar

проблема в следующем: почему при запуске она создает файл настроек не в своей директории, а в /home ?

как исправить?

просто раздражает, что среди каталогов в /home/ висит файл настроек.

думаю что надо скрипт для запуска, вероятно? но как его на панель впихнуть? не хочется лицезреть его на рабочем столе

OperaSoftware
() автор топика

>проблема в следующем: почему при запуске она создает файл настроек не в своей директории, а в /home ?

Кто создает? кнопка запуска? О_о

Создает программа? значит программа такая..

delilen ★☆
()

у кого какие идеи есть по этому поводу.

если можно пошагово.

OperaSoftware
() автор топика
Ответ на: комментарий от delilen

>>Создает программа? значит программа такая..

да нет, программа нармальная. если из консоли запускать вот так:

cd /home/user/prog/

java -jar blabla.jar

то все создается в нужном месте

OperaSoftware
() автор топика
Ответ на: комментарий от home_user

>>нехнер работать под рутом (ибо обычный пользователь не имеет доступа на запись в /home

упс, мое упущение. ошибся. разумеется в home/user/ она создает. под рутом не сижу - я же не идиот

OperaSoftware
() автор топика
Ответ на: комментарий от delilen

>>ну тогда описывай что и как делал? со всеми подробностями...

да вроде все описал уже.

что вам не понятно? пора уже проснуться - обед уже

OperaSoftware
() автор топика
Ответ на: комментарий от delilen

а.. ты про /home... да как-то даже значения не придал... так интуитивно дописал в мозгу юзера...))

delilen ★☆
()
Ответ на: комментарий от OperaSoftware

хм.. что-то чудеса какие-то..

с консоли ты делаешь две команды...

cd /home/user/prog/

java -jar blabla.jar

и все ок.

а с аплета одну "java -jar /home/user/prog/blabla.jar" и нехрена...

хм... чудеса блин...

delilen ★☆
()
Ответ на: комментарий от delilen

Вероятно, с апплета текущий (pwd) каталог - это /home/user. blabla.jar пишет в текущий каталог, поэтому при cd /home/user/prog/ оно всё красиво и получается, а при запуске из апплета - не туды.

Сейчас стоит задача сменит текущий каталог при запуске из апплета.

Slavaz ★★★★★
()
Ответ на: комментарий от Slavaz

>>понял. Попробуй так:

>>/bin/bash -c 'cd /home/user/prog/; java -jar blabla.jar'

спасибо. возьму на заметку. вопрос закрыт - все заработало :)

OperaSoftware
() автор топика

BTW, какой оконный менеджер?

Например, в KDE можно в свойствах кнопки указать "Рабочий путь" во вкладке "Приложение".

Slavaz ★★★★★
()
Ответ на: комментарий от Slavaz

>>Вероятно, с апплета текущий (pwd) каталог - это /home/user. blabla.jar пишет в текущий каталог, поэтому при cd /home/user/prog/ оно всё красиво и получается, а при запуске из апплета - не туды.

все именно так.

твой способ действует. теперь создает в директории с программой

OperaSoftware
() автор топика
Ответ на: комментарий от delilen

> Думаешь такое может быть?

Может, конечно. Если прога специально не обучена писать в определённые места ($HOME/.proga, например), а пишет в текущий каталог, то результат работы такой проги без предварительного явного задания каталога может быть где угодно: от $HOME и /tmp(/var/tmp) до /bin,/usr/bin,... и т.д. Если не рут - само собой, прога отвалится. Если рут - скучно :(

> А если я прогу просто запускаю по хоткею тогда что?

Тут всё сильно зависит от самой проги и от окружения, в котором она запускается. Повторюсь: прога научена на определённые пути - всё ок. Прога пишет в текущий каталог - тут уж как левой пятке разработчика технологии хоткея захочется. Если pwd при вызове из хоткея будет $HOME - будет $HOME; если /tmp - оно и будет... а может быть и dirname(proga).


Slavaz ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.