Top.Mail.Ru
Ответы
Аватар пользователя

maha_zoldik

Maha Zoldik
подписчиков

Значения кармы
мнения
знания
истории
Java. Преобразователь артефакта. Как очистить проект от module-info.class?

Всем привет! Может ли кто-то пожалуйста помочь мне, с очищением проекта от module-info.class. Извините меня за то, что я не могу подробнее описать мою проблему, по причине того что сам плохо понимаю это. Artifact Transformer в моем понимании, это то что может очистить артефакт/полученный .jar файл и зависимости от такого ненужного в моем понимании, шлака как module-info.class(Java 9+) Я пишу мод майнкрафт 1.12.2 и после того как я добавил через shadow зависимости в .jar, меня стали беспокоить различные ошибки. Их можно игнорировать, так как он не влияют на работу мода, но я хочу их исправить.

Я следую этому примеру
https://github.com/jjohannes/understanding-gradle/ ... Я хотел использовать этот код для регистрации artifact transformer
configurations.compileClasspath {
attributes.attribute(javaModuleAttribute, true)
}
configurations.runtimeClasspath {
attributes.attribute(javaModuleAttribute, true)
}

dependencies.artifactTypes.maybeCreate("jar").attributes.attribute(javaModuleAttribute, false)

dependencies.registerTransform(JavaModuleTransform) {
from.attributes.attribute(ARTIFACT_TYPE_ATTRIBUTE, "jar").attribute(javaModuleAttribute, false)
to.attributes.attribute(ARTIFACT_TYPE_ATTRIBUTE, "jar").attribute(javaModuleAttribute, true)
}
но возникает ошибка, и он не может найти основной класс пакета net.minecraftforge.legacydev

```2. Мне пришлось создать buildSrc/build.gradle и выполнить преобразование артефакта уже в build.gradle, поскольку скрипт groovy может быть импортирован только в основном build.gradle. Я ожидаю, что преобразование артефакта будет выполнено, но сейчас оно не выполняется, поскольку я, по-видимому, неправильно его зарегистрировал. У меня есть println, который должен отображать пути зависимостей при преобразовании ``

Суть в том что мне нужно очистить все зависимости/проект от module-info.class и исправить ошибки связанные с ним
Вот ошибка и код, пожалуйста помогите мне. ERROR:

https://pastebin.com/pbnBXt0C

BUILD.GRADLE(ROOT) and buildSrc/build.gradle

https://pastebin.com/TbwXDdT0

buildSrc/src/main/groovy/org/example/JavaModuleTransform.groovy

https://pastebin.com/hFygDi8d