Errors in my config

Discussion in 'Plugin Development' started by ThrustLP, Mar 3, 2014.

Thread Status:
Not open for further replies.
  1. Offline

    ThrustLP

    Hello!

    If I start up my server I get those errors:

    Code:
    [19:26:04 ERROR]: Could not load 'plugins\kriegvoter.jar' in folder 'plugins'
    org.bukkit.plugin.InvalidPluginException: java.lang.IllegalArgumentException: Fi
    le cannot be null
            at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.j
    ava:182) ~[cb.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
            at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.
    java:308) ~[cb.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
            at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager
    .java:231) [cb.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
            at org.bukkit.craftbukkit.v1_7_R1.CraftServer.loadPlugins(CraftServer.ja
    va:255) [cb.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
            at org.bukkit.craftbukkit.v1_7_R1.CraftServer.<init>(CraftServer.java:23
    3) [cb.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
            at net.minecraft.server.v1_7_R1.PlayerList.<init>(PlayerList.java:63) [c
    b.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
            at net.minecraft.server.v1_7_R1.DedicatedPlayerList.<init>(SourceFile:14
    ) [cb.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
            at net.minecraft.server.v1_7_R1.DedicatedServer.init(DedicatedServer.jav
    a:126) [cb.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
            at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java
    :424) [cb.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
            at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:6
    17) [cb.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
    Caused by: java.lang.IllegalArgumentException: File cannot be null
            at org.apache.commons.lang.Validate.notNull(Validate.java:203) ~[cb.jar:
    git-Bukkit-1.7.2-R0.2-b2974jnks]
            at org.bukkit.configuration.file.YamlConfiguration.loadConfiguration(Yam
    lConfiguration.java:171) ~[cb.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
            at org.bukkit.plugin.java.JavaPlugin.reloadConfig(JavaPlugin.java:118) ~
    [cb.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
            at org.bukkit.plugin.java.JavaPlugin.getConfig(JavaPlugin.java:112) ~[cb
    .jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
            at me.thrustlp.kriegvoter.kriegvoter.<init>(kriegvoter.java:33) ~[?:?]
            at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    ~[?:1.7.0_51]
            at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    ~[?:1.7.0_51]
            at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Sou
    rce) ~[?:1.7.0_51]
            at java.lang.reflect.Constructor.newInstance(Unknown Source) ~[?:1.7.0_5
    1]
            at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.j
    ava:178) ~[cb.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
            ... 9 more
    Now my Question is:
    What do I have to change in my plugin? The plugin.yml and the config.yml exists!

    Plugin:


    Code:java
    1. package me.thrustlp.kriegvoter;
    2.  
    3. import java.util.ArrayList;
    4.  
    5. import org.bukkit.Bukkit;
    6. import org.bukkit.ChatColor;
    7. import org.bukkit.command.Command;
    8. import org.bukkit.command.CommandSender;
    9. import org.bukkit.entity.Player;
    10. import org.bukkit.event.Listener;
    11. import org.bukkit.plugin.java.JavaPlugin;
    12.  
    13. public class kriegvoter extends JavaPlugin implements Listener {
    14.  
    15.  
    16. ArrayList<String> players = new ArrayList<String>();
    17.  
    18.  
    19.  
    20. public void onEnable(){
    21. System.out.println("[KriegVoter] Enabled");
    22. loadConfig();
    23. }
    24.  
    25. public void onDisable(){
    26. System.out.println("[KriegVoter] Disabled");
    27. }
    28.  
    29.  
    30.  
    31. int votes1 = 0;
    32. int votes2 = 0;
    33. int d = getConfig().getInt("Krieg.Kriegdauerinsekunden");
    34.  
    35.  
    36.  
    37.  
    38. public boolean onCommand(CommandSender sender, Command cmd, String cmdlabel, String[] args){
    39. Player p = (Player) sender;
    40.  
    41. if(cmd.getName().equalsIgnoreCase("kriegvoter")){
    42. p.sendMessage(ChatColor.GOLD + "[KriegVoter] " + ChatColor.AQUA + "Tippe " + ChatColor.RED + "/krieg " + ChatColor.AQUA + "um für Krieg zu voten. Ob Krieg läuft wird dir beim joinen angezeigt!");
    43.  
    44. return true;
    45. }
    46. if(cmd.getName().equalsIgnoreCase("startkrieg")){
    47.  
    48. p.sendMessage("//ERROR//");
    49.  
    50. }
    51.  
    52.  
    53.  
    54. if(cmd.getName().equalsIgnoreCase("krieg")){
    55. if(!players.contains(p.getName())){
    56. players.add(p.getName());
    57. String Team1 = getConfig().getString("Krieg.Team1");
    58. String Team2 = getConfig().getString("Krieg.Team2");
    59. String Warp = getConfig().getString("Krieg.Warp");
    60.  
    61.  
    62.  
    63. if(p.hasPermission("krieg.teameins")){
    64. votes1++;
    65. p.sendMessage(ChatColor.GOLD + "[KriegVoter] " + ChatColor.AQUA + "jedes Team benötigt 5 Votes damit der Krieg startet! " + ChatColor.RED + Team1 + ChatColor.AQUA + " hat" + ChatColor.RED + votes1 + ChatColor.AQUA + " votes, und " + ChatColor.BLUE + Team2 + " " + votes2);
    66.  
    67. }
    68. else{
    69. if(p.hasPermission("krieg.teamzwei")){
    70. votes2++;
    71. p.sendMessage(ChatColor.GOLD + "[KriegVoter] " + ChatColor.AQUA + "jedes Team benötigt 5 Votes damit der Krieg startet! " + ChatColor.RED + Team1 + ChatColor.AQUA + " hat" + ChatColor.RED + votes1 + ChatColor.AQUA + " votes, und " + ChatColor.BLUE + Team2 + " " + votes2);
    72.  
    73. }
    74. else{
    75. p.sendMessage(ChatColor.GOLD + "[KriegVoter] " + ChatColor.AQUA + "du hast kein Team! " + Warp);
    76.  
    77. }
    78.  
    79. }
    80.  
    81.  
    82.  
    83. return true;
    84. }
    85. else{
    86.  
    87. p.sendMessage(ChatColor.AQUA + "Du kannst erst nach dem nächsten Restart/Krieg wieder voten!!!");
    88. }
    89. //WennAllesEcht
    90.  
    91.  
    92. if(votes1 == 5 && votes2 == 5){
    93. //hier den PVPON Command
    94. Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "broadcast " + ChatColor.GREEN + "PvP wurde AKTIVIERT");
    95. Bukkit.getScheduler().scheduleSyncDelayedTask(this,new Runnable() {
    96.  
    97. @Override
    98. public void run() {
    99.  
    100. //commandPVPOFF
    101. Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "broadcast " + ChatColor.GREEN + "PvP wurde DEAKTIVIERT! /krieg um erneut zu voten");
    102.  
    103. }
    104.  
    105. }, d*20L);
    106. return true;
    107.  
    108. }
    109. else{
    110. return true;
    111.  
    112. }
    113. //ENDE
    114.  
    115. }
    116.  
    117.  
    118.  
    119.  
    120.  
    121.  
    122. return false;
    123. }
    124.  
    125. public void loadConfig() {
    126. getConfig().options().copyDefaults(true);
    127. saveConfig();
    128. }
    129.  
    130.  
    131.  
    132. }
    133.  
    134.  
    135.  
    136.  


    (My Plugin is written in german, but it doesn't worry I think)

    I need help!

    Thank you!


    EDIT: Sorry I failed with my title ^^
     
  2. kriegvoter.java:33
    are you sure in your config there is:

    Code:
    Krieg:
         Kriegdauerinsekunden : 2
     
  3. Offline

    ThrustLP

    iBo3oF

    Code:
    Krieg:   
       
        Team1: Blue
        Team2: Red
        Warp: /warp teams
        Kriegdauerinsekunden: 7200

    Thats my whole config file, i think it's ok, isn't it?
     
  4. Code:
    org.bukkit.plugin.InvalidPluginException: java.lang.IllegalArgumentException: Fi
    le cannot be null

    Edit: I found your mistake, you are getting value before config is even loaded, that's why you get error, put
    1. Code:java
      1. int d = getConfig().getInt("Krieg.Kriegdauerinsekunden");
    into the onEnable
     
    ThrustLP likes this.
  5. Offline

    ThrustLP

    THANK YOU SO MUCH!!!!! Now I can fix it and go on! :D
     
Thread Status:
Not open for further replies.

Share This Page