Navigation

    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Popular
    • Users
    • Groups

    SOLVED Problème d'erreur empêchant la compilation du mod

    1.8.x
    1.8.9
    3
    13
    1897
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • E
      elx9000 last edited by

      Bonjour, j’ai essayé de compiler mon mod, mais il y à échec sur le build de gradlew : voici la fenêtre de commande :

      
      C:\Users\user\Desktop\forge-1.8.9-11.15.1.1747-mdk>gradlew build
      This mapping 'stable_20' was designed for MC 1.8.8! Use at your own peril.
      #################################################
              ForgeGradle 2.1-SNAPSHOT-17806f4
       https://github.com/MinecraftForge/ForgeGradle
      #################################################
                    Powered by MCP unknown
                  http://modcoderpack.com
              by: Searge, ProfMobius, Fesh0r,
              R4wk, ZeuX, IngisKahn, bspkrs
      #################################################
      :deobfCompileDummyTask
      :deobfProvidedDummyTask
      :sourceApiJava UP-TO-DATE
      :compileApiJava UP-TO-DATE
      :processApiResources UP-TO-DATE
      :apiClasses UP-TO-DATE
      :sourceMainJava UP-TO-DATE
      :compileJava
      warning: [options] bootstrap class path not set in conjunction with -source 1.6
      C:\Users\user\Desktop\forge-1.8.9-11.15.1.1747-mdk\build\sources\main\java\com\s
      urvivant\mod\Packet\Message.java:53: error: local variable message is accessed f
      rom within inner class; needs to be declared final
                         thirst.set(message.thirstVal);
                                    ^
      Note: Some input files use or override a deprecated API.
      Note: Recompile with -Xlint:deprecation for details.
      Note: Some input files use unchecked or unsafe operations.
      Note: Recompile with -Xlint:unchecked for details.
      1 error
      1 warning
      :compileJava FAILED
      
      FAILURE: Build failed with an exception.
      
      * What went wrong:
      Execution failed for task ':compileJava'.
      > Compilation failed; see the compiler error output for details.
      
      * Try:
      Run with –stacktrace option to get the stack trace. Run with --info or --debug
      option to get more log output.
      
      BUILD FAILED
      
      Total time: 20.221 secs
      
      C:\Users\user\Desktop\forge-1.8.9-11.15.1.1747-mdk>
      
      

      Merci d’avance.

      1 Reply Last reply Reply Quote 0
      • robin4002
        robin4002 Administrateurs Rédacteurs Moddeurs confirmés last edited by

        Salut,
        Ça ne compile pas car il y a une erreur dans ton code.

        1 Reply Last reply Reply Quote 0
        • E
          elx9000 last edited by

          Ok… J’ai retrouvé la ligne qui pose problème :

          
          public static class Handler implements IMessageHandler <message, imessage="">{
          
                 @Override
                 public IMessage onMessage(Message message, MessageContext ctx)
                 {
                     Minecraft.getMinecraft().addScheduledTask(new Runnable()
                     {
                         @Override
                         public void run()
                         {
                             EntityPlayer player = Minecraft.getMinecraft().thePlayer;
                             IThirst thirst = player.getCapability(ThirstProvider.THIRST_CAP, null);
                             thirst.set(message.thirstVal);                
                         }              
                     });
                     return null;
                 }
          
             }
          
          

          Mais ils veulent que je passe la variable message en final, cependant message est dans les paramètre de la fonction, donc comment faire ?

          Merci d’avance.</message,>

          1 Reply Last reply Reply Quote 0
          • LeBossMax2
            LeBossMax2 last edited by

            @‘elx9000’:

            Mais ils veulent que je passe la variable message en final, cependant message est dans les paramètre de la fonction, donc comment faire ?

            Cela n’empêche pas de mettre la variable en final. Si une variable local à une fonction ou un paramètre de fonction est final, cela signifie juste que sa valeur ne va pas être modifiée.

            1 Reply Last reply Reply Quote 1
            • E
              elx9000 last edited by

              Ok, j’ai fait ceci :

              
              public static class Handler implements IMessageHandler <message, imessage="">{
              
                     @Override
                     public IMessage onMessage(final Message message, MessageContext ctx)
                     {
                         Minecraft.getMinecraft().addScheduledTask(new Runnable()
                         {
                             @Override
                             public void run()
                             {
                                 EntityPlayer player = Minecraft.getMinecraft().thePlayer;
                                 IThirst thirst = player.getCapability(ThirstProvider.THIRST_CAP, null);
                                 thirst.set(message.thirstVal);                
                             }              
                         });
                         return null;
                     }
              
                 }
              
              

              Le build du mod est un succès.
              Par contre, le fichier lang n’a pas l’air ne s’être chargé, car en jeux (une fois le mod compilé) aucun de mes items, blocs,… n’a de noms. Avez-vous une idée sur ce problème ?

              Merci d’avance.</message,>

              1 Reply Last reply Reply Quote 0
              • robin4002
                robin4002 Administrateurs Rédacteurs Moddeurs confirmés last edited by

                Ton fichier de lang est où est se nomme comment ?

                1 Reply Last reply Reply Quote 0
                • E
                  elx9000 last edited by

                  Mon fichier lang se situe :

                  forge-1.8.9-11.15.1.1747-mdk\src\main\resources\assets\survivant\lang

                  et se nomme fr_FR

                  Merci d’avance.

                  1 Reply Last reply Reply Quote 0
                  • robin4002
                    robin4002 Administrateurs Rédacteurs Moddeurs confirmés last edited by

                    Ça me semble bon.
                    Le fichier se trouve bien dans le zip final ?

                    1 Reply Last reply Reply Quote 0
                    • E
                      elx9000 last edited by

                      Oui, il est bien dans le mod fini. Au fait, c’est normal d’avoir deux mod une fois la compilation fini : un nommé survivant-1.0.0 et l’autre nommé survivant-1.0.0-sources ?

                      Merci d’avance.

                      1 Reply Last reply Reply Quote 0
                      • robin4002
                        robin4002 Administrateurs Rédacteurs Moddeurs confirmés last edited by

                        Oui c’est normal d’avoir deux jar.

                        Tu peux envoyer le jar que je puisse regarder ?

                        1 Reply Last reply Reply Quote 0
                        • LeBossMax2
                          LeBossMax2 last edited by

                          elx9000 as-tu essayé de ne tout mettre de minuscule dans le nom du fichier lang ? Car si je ne dis pas de bêtise, dans les dernières versions, c’est comme ça qu"il faut faire.
                          (http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-mods/modification-development/2818534-forge-lang-file-didnt-work :

                          In your pack.mcmeta file, is “pack_format” set to 3?

                          If it is, Minecraft will only load resources with lowercase names, including lang files. Rename en_US.lang to en_us.lang and pl_PL.lang to pl_pl.lang.

                          If it’s set to 2 or not set at all (either because you don’t have a pack.mcmeta file or because it doesn’t contain a “pack” section), FML will use the LegacyV2Adapter IResourcePack wrapper for your mod’s resources. This will still only load resources with lowercase names, except lang files. Lang files will only be loaded with the mixed case names used in earlier versions (e.g. en_US.lang).

                          )

                          1 Reply Last reply Reply Quote 0
                          • E
                            elx9000 last edited by

                            Maintenant, j’ai un autre souci, il y a échec lorsque je fais gradlew clean.
                            Je n’arrive pas à vous transmettre le jar, je dois demander l’autorisation à l’administrateur (j’avoue que là j’y comprends plus rien normalement je suis l’administrateur de mon pc, comment corriger ceci ?)

                            Merci d’avance.

                            1 Reply Last reply Reply Quote 0
                            • E
                              elx9000 last edited by

                              J’ai réussi à retenter un build. Le souci du fichier lang a pu être réglé : je l’ai nommé fr_FR, et j’ai mis mon jeu en français (ce que je n’avais pas fait avant 😄 ).
                              Le problème de la texture bugées était dû à une erreur de lettre j’avais mis I au lieu de i sur la texture.

                              Du coup, mes 2 problèmes ont été résolu, merci de l’aide.

                              1 Reply Last reply Reply Quote 0
                              • 1 / 1
                              • First post
                                Last post
                              Design by Woryk
                              Contact / Mentions Légales / Faire un don

                              MINECRAFT FORGE FRANCE © 2018

                              Powered by NodeBB