Импорт классов, с разных модов

Версия Minecraft
1.7.10
201
6
32
Возник вопрос...
Можно-ли, импортировать класс одного мода в другой?
Если да, то каким образом?
(Желательно с кодом, или примером)
 
Решение
Если автор мода не лох и залил dev-мод на maven-реп, то ты можешь просто указать зависимость в build.gradle:
Код:
dependencies {
    // you may put jars on which you depend on in ./libs
    // or you may define them like so..
    //compile "some.group:artifact:version:classifier"
    //compile "some.group:artifact:version"

    // real examples
    //compile 'com.mod-buildcraft:buildcraft:6.0.8:dev'  // adds buildcraft to the dev env
    //compile 'com.googlecode.efficient-java-matrix-library:ejml:0.24' // adds ejml to the dev env

    // for more info...
    // http://www.gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html
    // http://www.gradle.org/docs/current/userguide/dependency_management.html

Если автор все...
1,159
38
544
Если автор мода не лох и залил dev-мод на maven-реп, то ты можешь просто указать зависимость в build.gradle:
Код:
dependencies {
    // you may put jars on which you depend on in ./libs
    // or you may define them like so..
    //compile "some.group:artifact:version:classifier"
    //compile "some.group:artifact:version"

    // real examples
    //compile 'com.mod-buildcraft:buildcraft:6.0.8:dev'  // adds buildcraft to the dev env
    //compile 'com.googlecode.efficient-java-matrix-library:ejml:0.24' // adds ejml to the dev env

    // for more info...
    // http://www.gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html
    // http://www.gradle.org/docs/current/userguide/dependency_management.html

Если автор все таки не очень хороший типок, то рядом с папкой "main" создай папку "api". А в ней - папки "java" и "resources". Затем скачай сурсы мода, с которым желаешь сделать совместимость и кинь туда. Твоя IDE распознает эти папки, а плагин ForgeGradle догадается, что "api" не нужно включать в билд. Вот и все! Ты можешь юзать классы стороннего мода.

Если же твой мод не может существовать без другого, не забудь указать его в mcmod.info в поле "dependencies". А так же укажи зависимость в главном классе твоего мода

Код:
@Mod(modid = ..., version = ..., dependencies = "required-after:MOD_ID_МОДА_ЗАВИСИМОСТИ@ВЕРСИЯ_МОДА_ЗАВИСИМОСТИ")
public class ModMainClass
{
    // ...
}
 
1,159
38
544
Просто декомпилируешь мод + деобф
И это "проще", чем прописать одну-две строки в билд-конфиге? Бывают же ведь ситуации, когда декомпилированный мод сам зависит от других модов и сторонних библиотек, которые тоже нужно подключать к проекту. Предлагаешь вернуться в нулевые, управлять зависимостями самостоятельно, как во времена Apache Ant? А при подключении через градл он может сам докачать сторонние зависимости. Кроме того он еще и проект в classpath добавит, что уберет необходимость толкать мод-зависимость в папку mods.
 
Сверху