«Команда не найдена: grep» в консоли karaf - PullRequest
0 голосов
/ 28 сентября 2011

У меня странная проблема с версией Servicemix Fuse ESB 4.4.1.

Иногда часть команд не загружается и становится недоступной. Обычно это происходит с довольно часто используемой мной командой grep. Это выглядит следующим образом:

karaf @ root> list | grep spring

Команда не найдена: grep

Вроде бы случайный, обычно помогает перезагрузка. С предыдущими версиями Fuse ESB это случалось иногда, но довольно редко, сейчас это случается довольно часто. Может кто-нибудь помочь, в чем причина проблемы?

Ответы [ 2 ]

1 голос
/ 18 декабря 2011

Возможно, это совершенно не связано, но я столкнулся с рядом условий гонки во время загрузки в Карафе и его зависимостях. Самое главное, что я подал:

https://issues.apache.org/jira/browse/KARAF-910 «Гонка между FeatureService и ConfigAdmin для разрешения URL-адресов mvn:?»

Этот конкретный дефект проявляется только в том случае, если у вас есть некоторые нестандартные настройки для pax-url-mvn, но это признак общей проблемы, когда configadmin применяет настройки асинхронно, поэтому важно, если поток configadmin работает быстрее или медленнее, чем основной поток запуска OSGi.

Я не видел никаких проблем с Командой Караф, связанных с этой расой, но моя проблема внешне похожа в том, что некоторые пакетные сервисы случайно не запускаются.

0 голосов
/ 28 сентября 2011

Команда 'grep' имеет полное имя - shell: grep.Вы можете попробовать это, чтобы посмотреть, была ли установлена, например, другая команда с таким же коротким (неквалифицированным) именем, и она запуталась.

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

osgi: list -t 0 -s

покажет вам список всех пакетов по символическому имени, включая этот: (число может быть другим):

[  18] [Active     ] [Created     ] [   30] org.apache.karaf.shell.commands (2.2.3)
 karaf@root> osgi:stop 18
 You are about to access system bundle 18.  Do you wish to continue (yes/no): yes
 karaf@root> help | grep grep
 Command not found: grep
 karaf@root> osgi:start 18
 You are about to access system bundle 18.  Do you wish to continue (yes/no): yes
 karaf@root> help | grep grep
         shell:grep

Что касается того, почему этот пакет останавливается - может быть, что-то (или кто-то) явно его останавливает?Или его случайно остановили?

...