Невозможно развернуть проект в WebSphere из Eclipse с указанным классом пути - PullRequest
0 голосов
/ 05 февраля 2019

Я использую оболочку Gradle 5.1.1 с плагином eclipse-wtp для построения многомодульного EAR.Я импортирую проект как существующий gradle-проект в Eclipse, и там нет ошибок.Но как только я пытаюсь развернуть приложение в WebSphere 8.5.5, я получаю следующую ошибку:

[2/5/19 12:00:09:566 CST] 00000154 wtp           E org.eclipse.jst.j2ee.commonarchivecore.internal.impl.CommonarchiveFactoryImpl createTempZipFileStrategyIfPossible Failed to open input stream on target [ WEB-INF/lib/ServiceBusiness.jar ].
Failed to create temporary file.
A nested strategy will be used, but this usually slows performance dramatically.
...
...
Caused by: com.ibm.ws.exception.RuntimeWarning: java.io.FileNotFoundException: Unable to obtain binaries path for [ NestedArchiveLoadStrategy [ -1512854742 ] URI [ WEB-INF/lib/ServiceBusiness.jar ] Container [ 391870138 ] Open [ true ] ]

Если я создаю приложение с использованием gradle, оно развертывается нормально и работает.

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

Gradle created classpath entries

У меня есть обходной путь для этогорешение, которое включает снятие флажка Allow output folders for source folders, после чего приложение успешно разворачивается.Но это приводит к тому, что всем разработчикам приходится вручную исправлять путь к классу в eclipse каждый раз, когда они обновляют проект gradle.

Есть ли способ заставить его работать без этого?

Структура проекта выглядит так:ниже:

Service.ear
+
+--->Service.war
+          +
           | +-->ServiceBusiness.jar
           +
...