ClassNotFound при нажатии CloudFoundry каталога Alp-сервера, но не при нажатии EAR: -? - PullRequest
1 голос
/ 16 апреля 2019

В настоящее время я пытаюсь развернуть приложение Java в IBM Liberty для Cloud Foundry. Приложение является приложением Spring-Boot. Развертывание отлично работает при нажатии самого EAR. Но мне нужно изменить server.xml сервера Liberty. Таким образом, теперь я помещаю каталог defaultServer, содержащий server.xml и мой EAR.

На данный момент я скопировал файл server.xml из профиля в облаке, когда он успешно развернут через push EAR. Поэтому я ожидаю, что server.xml будет работать. Но когда я сейчас развернул сервер по умолчанию, я внезапно получаю исключение ClassNotFoundException при запуске сервера. Что не так? Почему он вдруг не находит событие зависимостей, хотя EAR почти такой же.

 ------Start of DE processing------ = [4/15/19 21:12:17:313 UTC]
Exception = java.util.ServiceConfigurationError
Source = com.ibm.ws.webcontainer.osgi.DynamicVirtualHost
probeid = startWebApp
Stack Dump = java.util.ServiceConfigurationError: javax.servlet.ServletContainerInitializer: Provider org.cloudfoundry.reconfiguration.spring.AutoReconfigurationServletContainerInitializer could not be instantiated
        at java.util.ServiceLoader.fail(Unknown Source)
        at java.util.ServiceLoader.access$100(Unknown Source)
        at java.util.ServiceLoader$LazyIterator.nextService(Unknown Source)
        at java.util.ServiceLoader$LazyIterator.next(Unknown Source)
        at java.util.ServiceLoader$1.next(Unknown Source)
        at com.ibm.ws.webcontainer.webapp.WebApp.initializeServletContainerInitializers(WebApp.java:2453)
        at com.ibm.ws.webcontainer.webapp.WebApp.initialize(WebApp.java:995)
        at com.ibm.ws.webcontainer.webapp.WebApp.initialize(WebApp.java:6594)
        at com.ibm.ws.webcontainer.osgi.DynamicVirtualHost.startWebApp(DynamicVirtualHost.java:467)
        at com.ibm.ws.webcontainer.osgi.DynamicVirtualHost.startWebApplication(DynamicVirtualHost.java:462)
        at com.ibm.ws.webcontainer.osgi.WebContainer.startWebApplication(WebContainer.java:1140)
        at com.ibm.ws.webcontainer.osgi.WebContainer.access$000(WebContainer.java:110)
        at com.ibm.ws.webcontainer.osgi.WebContainer$3.run(WebContainer.java:952)
        at com.ibm.ws.threading.internal.ExecutorServiceImpl$RunnableWrapper.run(ExecutorServiceImpl.java:239)
        at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NoClassDefFoundError: org.springframework.context.ApplicationContextInitializer
        at java.lang.ClassLoader.defineClassImpl(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at com.ibm.ws.classloading.internal.AppClassLoader.definePackageAndClass(AppClassLoader.java:357)
        at com.ibm.ws.classloading.internal.AppClassLoader.findClass(AppClassLoader.java:281)
        at java.lang.ClassLoader.loadClassHelper(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at com.ibm.ws.classloading.internal.AppClassLoader.findOrDelegateLoadClass(AppClassLoader.java:522)
        at com.ibm.ws.webcontainer.webapp.WebApp.initializeServletContainerInitializers(WebApp.java:2453)
        at com.ibm.ws.classloading.internal.AppClassLoader.loadClass(AppClassLoader.java:482)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at org.cloudfoundry.reconfiguration.spring.AutoReconfigurationServletContainerInitializer.<clinit>(AutoReconfigurationServletContainerInitializer
.java:33)
        at java.lang.J9VMInternals.newInstanceImpl(Native Method)
        at java.lang.Class.newInstance(Unknown Source)
        ... 17 more
Caused by: java.lang.ClassNotFoundException: org.springframework.context.ApplicationContextInitializer
        at com.ibm.ws.classloading.internal.AppClassLoader.findClassCommonLibraryClassLoaders(AppClassLoader.java:544)
        at com.ibm.ws.classloading.internal.AppClassLoader.findClass(AppClassLoader.java:286)
        at java.lang.ClassLoader.loadClassHelper(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at com.ibm.ws.classloading.internal.AppClassLoader.findOrDelegateLoadClass(AppClassLoader.java:522)
        at com.ibm.ws.classloading.internal.AppClassLoader.loadClass(AppClassLoader.java:482)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        ... 29 more

Я ожидаю, что приложение запускается так же, как и при нажатии EAR, чтобы я мог продолжать манипулировать server.xml по мере необходимости.

Спасибо, Alex

...