Проблемы с либами на сервере

Версия Minecraft
1.12.2

will0376

Токсичная личность
2,058
55
572
Драсть. Пишу мод, который будет взаимодействовать с ботом дискорда. Всё готово, работает в среде, закидываю на сервер вместе с либами - получаю
Caused by: java.lang.ClassNotFoundException: com.fasterxml.jackson.databind.ObjectMapper
етить его так... Менял версии библиотеки, отдельно подкидывал(в mods, ибо кастомные из libraries не грузятся =\)
Идеи?

З.Ы. Я уже перешел с одной либы на это из-за похожей ошибки
 
Краш-лог
[16:38:08] [WebSocketSelector-30/INFO] [STDOUT]: [org.slf4j.impl.SimpleLogger:write:318]: 2020-02-13 16:38:08.675 [TRACE] Connection lost timer started
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]: java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/ObjectMapper
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]: at org.javacord.core.DiscordApiImpl.<init>(DiscordApiImpl.java:115)
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]: at org.javacord.core.DiscordApiBuilderDelegateImpl.login(DiscordApiBuilderDelegateImpl.java:168)
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]: at org.javacord.api.DiscordApiBuilder.login(DiscordApiBuilder.java:38)
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]: at ru.will0376.clienttweak.server.DiscordBot.logic(Discord.java:69)
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]: at ru.will0376.clienttweak.server.DiscordBot.run(Discord.java:55)
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]: at java.lang.Thread.run(Thread.java:748)
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1061]: Caused by: java.lang.ClassNotFoundException: com.fasterxml.jackson.databind.ObjectMapper
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1061]: at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:101)
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1061]: at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1061]: at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1061]: ... 6 more
Краш-лог:
[16:38:08] [WebSocketSelector-30/INFO] [STDOUT]: [org.slf4j.impl.SimpleLogger:write:318]: 2020-02-13 16:38:08.675 [TRACE] Connection lost timer started
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]: java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/ObjectMapper
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]:    at org.javacord.core.DiscordApiImpl.<init>(DiscordApiImpl.java:115)
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]:    at org.javacord.core.DiscordApiBuilderDelegateImpl.login(DiscordApiBuilderDelegateImpl.java:168)
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]:    at org.javacord.api.DiscordApiBuilder.login(DiscordApiBuilder.java:38)
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]:    at ru.will0376.clienttweak.server.DiscordBot.logic(Discord.java:69)
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]:    at ru.will0376.clienttweak.server.DiscordBot.run(Discord.java:55)
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]:    at java.lang.Thread.run(Thread.java:748)
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1061]: Caused by: java.lang.ClassNotFoundException: com.fasterxml.jackson.databind.ObjectMapper
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1061]:    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:101)
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1061]:    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1061]:    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
[16:38:08] [Thread-5/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1061]:    ... 6 more
292
14
160
закидываю на сервер вместе с либами
Как именно?

отдельно подкидывал(в mods, ибо кастомные из libraries не грузятся =\)
Просто закинуть джарник библиотеки в mods или libraries недостаточно. Попробуй закидывать классы библиотеки в джарник мода
 

will0376

Токсичная личность
2,058
55
572
с флешкой на другой конец мира к серверу езжу.
Просто закинуть джарник библиотеки в mods или libraries недостаточно.
до этого было достаточно(напр мискуль драйвер) - а теперь нет? логики не вижу.

При этом грузится и либа вебсокета и сам дискорд(стоит проверка на классы.). Но дис-либа не запускается из-за
NCDFE...
 

will0376

Токсичная личность
2,058
55
572
У тебя сервер откуда библиотеки грузит
Если я правильно всё понимаю - форджа сама либу из модс может добавить, но почему-то не видится именно этот класс, т.к. у меня javacord-3.0.5-shaded(т.е. жирный jar)
Добавь ему в Classpath свои либы.
Попробую, но мало верится, что сработает.
 
292
14
160
Каво

до этого было достаточно(напр мискуль драйвер) - а теперь нет?
Не вижу причин, по которым он должен работать, если его просто закинуть в папку.
На клиенте в лаунчере Сашка либы из libraries грузятся потому что каждый джарник добавлен как значение Class-Path в MANIFEST.MF джарника форжа, а в ванильном лаунчере зависимости вписаны в json-файл.
 

will0376

Токсичная личность
2,058
55
572
Не вижу причин, по которым он должен работать
потому-что:
FML has found a non-mod file jackson-databind-2.10.2.jar in your mods directory. It will now be injected into your classpath. This could severe stability issues, it should be removed if possible.
^ та самая либа, которую я отдельно закинул
 

tox1cozZ

aka Agravaine
8,454
598
2,890
Не вижу причин, по которым он должен работать, если его просто закинуть в папку.
Фордж все джарники из mods грузит в Classpath, так что либы можно кидать в mods. Но тут трабла: из-за порядка загрузки джарников может быть такая дичь как у ТС. Поэтому в манифесте мода нужно указывать что-то типа "Class-Path": my-lib.jar, чтобы сначала прогрузилась либа, а потом уже мод.
 
7,099
324
1,509
Добавь либе префикс AAA и закинь в mods/1.12.2
 
292
14
160
манифесте мода нужно указывать что-то типа "Class-Path": my-lib.jar
Ну хызы, это даёт жёсткую зависимость от названия файла. Удобнее один джарник с зависимостями распространять, чем мод и кучку зависимостей в разных джарниках. И проблем с загрузкой не будет.

Но если ТСу хочется, чтобы джарник мода не включал зависимости, можно в джарники зависимостей добавить классы с аннотацией Mod:
@Mod(modid = "jackson-databind", version = "2.10.0")
В таком случае можно в аннотации своего мода написать required-after:jackson-databind и мод не загрузится, пока не найдутся нужные зависимости.
 
Последнее редактирование:

will0376

Токсичная личность
2,058
55
572
Я бы зависимости в джарник мода
Глупо. ибо:
1)если это jar2jar - он распакует все зависимости в mods/1.12.2
2)если это банальное запаковывание всех классов в 1 jar - возможно будет так-же точно как и у меня, т.е. см п.1.
Тут только класспатч спасает
 
Сверху