Получение ClassNotFoundException при использовании eclipseLink с gradle

avatar
Zak FST
9 августа 2021 в 01:37
83
1
0

Я использую eclipseLink с gradle в своем проекте Java

это моя конфигурация зависимостей Gradle

dependencies {
    compile(group:"org.eclipse.persistence", name:"eclipselink", version:"2.7.4.K3", changing: true) 
    
    ...
}

когда я запускаю свое приложение, я получаю эту ошибку:

Caused by: java.lang.ClassNotFoundException: org.eclipse.persistence.indirection.ValueHolderInterface

я что-то пропустил в своей конфигурации Gradle?

Источник
Chris
9 августа 2021 в 17:50
0

Он компилируется? Кажется странным, может быть, посмотрите, как вы запускаете свое приложение. ValueHolderInterface — это то, что EclipseLink помещает в ваши классы сущностей, чтобы разрешить ленивую выборку, поэтому, возможно, проверьте, сериализуете ли вы сущности в какое-то место, где нет зависимости EclipseLink — это должно быть привязано к вашим классам модели.

Igor Kanshyn
10 августа 2021 в 01:09
0

Не могли бы вы поделиться всем файлом build.gradle

Zak FST
10 августа 2021 в 08:00
0

@ Крис, да, компилируется

Chris
13 августа 2021 в 18:43
0

Вы сериализацию проверяли? Вы не указали контекст того, откуда вы получаете это исключение - стек и как эта часть приложения была запущена/загружена.

Ответы (1)

avatar
Igor Kanshyn
9 августа 2021 в 01:51
0

Попробуйте использовать это:

implementation group: 'org.eclipse.persistence', name: 'eclipselink', version: '2.7.4'

и все должно быть в порядке.

Zak FST
9 августа 2021 в 02:09
0

к сожалению это не решает мою проблему

Igor Kanshyn
10 августа 2021 в 01:08
1

Есть класс ValueHolderInterface. Что-то еще не так с проектом. Можете ли вы попробовать скомпилировать его напрямую через Gradle? Что ты видишь?