Не могу добавить uuid generator

MarinCod

Пользователь
Сообщения
81
Уже и в модули пытался запихивать джарник, и в библиотеки, и даже распаковывал из джарника классы — ничего не получается.

Я честно пытался найти какой-то гайд как это делать, но ничего не нашёл. У меня получается добавлять обычные плагины по типу worldguard, но этот — нет.

Я понимаю, что для вас вопрос может быть дурацким и соглашусь, но пожалуйста, хотя бы в двух словах опишите как добавить это в мой плагин. В консоли при вызове класса из этого джарника пишет, что класс не найден. Сам генератор:
 
Ну так в pom.xml вписываешь
XML:
<!-- https://mvnrepository.com/artifact/com.fasterxml.uuid/java-uuid-generator -->
<dependency>
    <groupId>com.fasterxml.uuid</groupId>
    <artifactId>java-uuid-generator</artifactId>
    <version>4.0.1</version>
</dependency>
Я сам его использую
 
Вам необходимо зарегистрироваться для просмотра изображений-вложений

Написал, но все еще не может найти класс.
Java:
[20:57:56 WARN]: Unexpected exception while parsing console command "mb create Албания"

org.bukkit.command.CommandException: Unhandled exception executing command 'mb' in plugin MarinTileEditor v1.0-SNAPSHOT
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:47) -[paper-api-1.18.1-R0.1-SNAPSHOT.jar:?]
at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:159) -[paper-api-1.18.1-R0.1-SNAPSHOT.jar:?] at org.bukkit.craftbukkit.v1_18_R1.CraftServer.dispatchCommand(CraftServer.java:908) [paper-1.18.1.jar:git-Paper-216]
at org.bukkit.craftbukkit.v1_18_R1.CraftServer.dispatchServerCommand(CraftServer.java:871) ~[paper-1.18.1.jar:git-Paper-216] at net.minecraft.server.dedicated.DedicatedServer.handleConsoleInputs(DedicatedServer.java:507) -[paper-1.18.1.jar:git-Paper-216]
at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:481) -[paper-1.18.1.jar:git-Paper-216]
at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1480) -[paper-1.18.1.jar:git-Paper-216]
at .minecraft.server.MinecraftServer.runServer (MinecraftServer.java:1273) -[paper-1.18.1.jar:git-Paper-216] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:317) ~[paper-1.18.1.jar:git-Paper-216]
at java.lang.Thread.run(Thread.java:833) ~[?:?]
Caused by: at marintileeditor.main.ID.ID.getCityID(ID.java:11) -[MarinTileForLovingYouBaby.jar:?]
java.lang.NoClassDefFoundError: com/fasterxml/uuid/Generators
at marintileeditor.main.commands.MBCommand.onCommand(MBCommand.java:23) ~[MarinTileForLovingYouBaby.jar:?]
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[paper-api-1.18.1-R0.1-SNAPSHOT.jar:?]
9 more
Caused by: java.lang.ClassNotFoundException: com.fasterxml.uuid.Generators
at org.bukkit.plugin.java.PluginClassLoader.loadClass(PluginClassLoader.java:151) [paper-api-1.18.1-R0.1-SNAPSHOT.jar:?] at org.bukkit.plugin.java.PluginClassLoader.loadClass(PluginClassLoader.java:103) -[paper-api-1.18.1-R0.1-SNAPSHOT.jar:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
at marintileeditor.main.ID.ID.getCityID(ID.java:11) -[MarinTileForLovingYouBaby.jar:?] at marintileeditor.main.commands.MBCommand.onCommand(MBCommand.java:23
) [MarinTileForLoving YouBaby.jar:?] at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[paper-api-1.18.1-R0.1-SNAPSHOT.jar:?]
9 more
 
XML:
<plugin>
                <artifactId>maven-shade-plugin</artifactId>
                <configuration>
                    <createDependencyReducedPom>false</createDependencyReducedPom>
                </configuration>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>shade</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
добавь плагин шейда
 
XML:
<plugin>
                <artifactId>maven-shade-plugin</artifactId>
                <configuration>
                    <createDependencyReducedPom>false</createDependencyReducedPom>
                </configuration>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>shade</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
добавь плагин шейда
Вам необходимо зарегистрироваться для просмотра изображений-вложений

Скорее всего, чего-то не понимаю, но у меня есть такие строчки в pom.xml
 
ну так проверь логи. во время шейда мавен пишет о том, что какую-то зависимость запихивает в банку
В логах билда ничего нет. Других логов не знаю.
В Dependencies эта библиотека также отображается.
Объединено

Посмотрел как это сделал другой человек, оказалось нужно просто в джарник плагина запихнуть папку com - fasterxml - uuid и т.д.

Получил я её из jar этих генераторов, в ней содержатся все классы. Оказалось все просто, спасибо за помощь.
 
Последнее редактирование:
Посмотрел как это сделал другой человек, оказалось нужно просто в джарник плагина запихнуть папку com - fasterxml - uuid и т.д.
Так лучше никогда не делать, а научиться пользоваться системами сборки
 
Так лучше никогда не делать, а научиться пользоваться системами сборки
Как видите, пытался и очень даже. Однако лишь этот способ сработал. Какие причины того, что так лучше не делать?
 
Как видите, пытался и очень даже. Однако лишь этот способ сработал. Какие причины того, что так лучше не делать?
Код библиотеки - не твой код. Он не должен лежать в сурсах твоего проекта. Если он нужен в classpath, используется shade в финальную банку, чтобы библиотека шла вместе с твоим кодом. Так делают все и везде, поэтому невозможно, что оно не работает
 
Код библиотеки - не твой код. Он не должен лежать в сурсах твоего проекта. Если он нужен в classpath, используется shade в финальную банку, чтобы библиотека шла вместе с твоим кодом. Так делают все и везде, поэтому невозможно, что оно не работает
Ну хорошо, давайте тогда решать. В пом хмл у меня есть те строчки выше, ошибок не возникает. В Dependencies всё корректно отображается. Шейд у меня тоже есть. В чём может быть проблема?
 
Назад
Сверху Снизу