[JAVA] Faire du gros pot avec le modding Minecraft

Qu'est-ce que fatJar en premier lieu?

Lorsque vous utilisez une bibliothèque tierce, etc., y compris cette bibliothèque, tout est dans un fichier jar (je pense).

Cet environnement

Le premier ・ IntelliJ IDEA Community Edition 2016.3.4 ・ Forge 1.7.10-10.13.4.1614 ・ Forge Gradle 1.2

Seconde ・ IntelliJ IDEA Community Edition 2016.3.4 ・ Forge 1.11.2-13.20.1.2386 ・ Forge Gradle 2.2-INSTANTANÉ

Comment puis-je faire?

  1. Ouvrez build.gradle
  2. Ajoutez la source suivante (si minecraft {} etc. existe déjà, ajoutez-la)
  3. Après avoir exécuté la tâche de construction, fatJar est terminé!

** * Veuillez ne pas écrire <>. Aussi, veuillez garder l'ordre de minecraft, des configurations, des dépendances, du jar tel quel. Dans le code ci-dessous, supprimez entre «d'ici» et «jusqu'à ici» dans l'environnement 1.11.2. ** **

//d'ici
minecraft {
    srgExtra "PK: <Le répertoire racine de cette bibliothèque> <Chemin lors de la création d'un fichier jar>"
}
//Jusque là

configurations{
    shade
    compile.extendsFrom shade
}

dependencies {
    <Changez la compilation en ombre, voir ci-dessous pour plus de détails>
}

jar {
    configurations.shade.each {dep ->
        from(project.zipTree(dep)){
            exclude 'META-INF', 'META-INF/**'
        }
    }
}

Exemple d'utilisation (uniquement les pièces nécessaires)

//d'ici
minecraft {
    srgExtra "PK: com/fasterxml/jackson/annotation com/fasterxml/jackson/annotation"
    srgExtra "PK: com/fasterxml/jackson/core com/fasterxml/jackson/core"
    srgExtra "PK: com/fasterxml/jackson/databind com/fasterxml/jackson/databind"
}
//Jusque là

configurations{
    shade
    compile.extendsFrom shade
}

dependencies {
    shade group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.9.0'
}

jar {
    configurations.shade.each {dep ->
        from(project.zipTree(dep)){
            exclude 'META-INF', 'META-INF/**'
        }
    }
}

Recommended Posts

Faire du gros pot avec le modding Minecraft
Minecraft Modding 1.12.2
Pot Gradle + Kotlin-Generate avec DSL
Les microservices avec DevOps apportent des modifications
Comment créer un fichier jar sans dépendances dans Maven
Faisons une application multiplateforme avec JRuby (génération de fichier jar)