2015-04-22 2 views
0

Я использую докер в сочетании с Java-проектом , который скомпилирован во время процесса сборки. Теперь я пытаюсь создать Java-код, основанный на Collada XML-схема версии 1.5, вызвав следующий скрипт внутри Dockerfile:Запуск JAXB/XJC в файле Dockerfile в GConf Error

BASEDIR=$(dirname $0) 
xjc $BASEDIR/schema/collada/collada-schema-1.5.xsd \ 
    -d $BASEDIR/knowrob_vis/src/main/java \ 
    -p org.knowrob.vis.collada \ 
    -extension $BASEDIR/schema/simpleMode.xsd 

К сожалению, это приводит в следующей ошибки:

(process:4093): GConf-WARNING **: Client failed to connect to the D-BUS daemon: 
Unable to autolaunch a dbus-daemon without a $DISPLAY for X11 
GConf Error: No D-BUS daemon running 

На моей главной машине он отлично работает для генерации кода Java. Вы можете найти Dockerfile здесь: https://raw.githubusercontent.com/knowrob/docker/master/hydro-knowrob/hydro-knowrob-daemon_local/Dockerfile

EDIT1: кажется XJC имеет некоторые странные зависимости XServer. Это не имеет смысла для меня. Как избежать этой проблемы?

ответ

0

Я решил проблему. На самом деле ошибка DBus может быть проигнорирована.

Проблема заключалась в отсутствии разрешений на запись в каталоге, где xjc пытается сгенерировать файлы. Исправлено это путем переключения права собственности на пользователя, который используется в файле Docker.

 Смежные вопросы

  • Нет связанных вопросов^_^