Я пытаюсь создать область с определенным слушателем кэша через gfsh с помощью следующей команды:Gemfire/Драгоценный камень кэш gfsh область слушатель
gfsh>create region --name=exampleRegion --type=REPLICATE --enable-statistics=true --cache-listener=com.example.RegionChangeListener
развернут класс com.example.RegionChangeListener (>deploy --jar=lib.jar
) в банке, но это, кажется, не работает - я получаю:
Could not process command due to GemFire error. java.lang.ClassNotFoundException cannot be cast to com.gemstone.gemfire.management.internal.cli.functions.CliFunctionResult
Похоже, класс не найден/признанной - где и как «зарегистрировать» так gemfire может инициализировать его правильно? Класс просто расширяет CacheListenerAdapter и реализует Declarable.
Я попытался это, но получение: ' "имя" параметра требуется. Используйте «help <имя команды>» для получения помощи. Параметр cp не применим для области создания. (У меня указан параметр имени). – m52509791
Позвольте мне уточнить. Возникает проблема: 1) как вы развертываете свою банку и 2) как вы создаете свой регион. Ваш регион создания отлично выглядит. Не используйте «deploy -jar = lib.jar» для загрузки вашего прослушивателя кеша. Вместо этого добавьте '--classpath =./Lib.jar' в ваш сервер' gfsh> start server --name = server1 --classpath =./Lib.jar ... 'command –
Спасибо, но я все еще делаю что-то не так. Я попробовал 'gfsh> start server --name = server1 --classpath =./Lib.jar' и даже' gfsh> запустить locator --name = loc1 - classpath =./Lib.jar' перед запуском сервера, и чем создание региона с моей начальной командой (без -cp), но все равно получаю ту же ошибку. – m52509791