【问题标题】:Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3 [duplicate]线程“主”java.lang.ArrayIndexOutOfBoundsException 中的异常:3 [重复]
【发布时间】:2015-06-07 06:36:43
【问题描述】:

我目前正在运行和开发游戏服务器,但问题是我无法在 Eclipse 上运行它,但我可以使用 run.bat 运行服务器 我收到错误:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3
at com.rs.ServerLauncher.main(ServerLauncher.java:75)

相关代码

public static void main(String[] args) throws Exception {
                if (args.length < 3) {
                        System.out.println("USE: guimode(boolean) debug(boolean) hosted(boolean) port(integer)");
                        return;
                }
                Settings.ECONOMY_MODE = Boolean.parseBoolean(args[2]);
                Settings.DEBUG = Boolean.parseBoolean(args[1]);
                Settings.SERVER_PORT = Integer.parseInt(args[3]); 
.....
.....
.....

完整代码-My ServerLauncher 类:http://pastebin.com/k1XZbqva

提前致谢。

【问题讨论】:

  • 在您的问题中发布代码,以便有类似问题的人能够找到此帖子。
  • “在您的问题中发布您的代码”是什么意思?我说我不能发布整个班级,因为它不会让我。我提供了全班的 pastebin 链接
  • 你应该发一个MCVE
  • args.length 应该是 4 如果你访问 args[3]
  • 你的意思是几行代码代表错误?

标签: java exception main


【解决方案1】:

就像错误所说,args 数组没有第四个(args[3])元素。请记住,数组从索引 0 开始。

【讨论】:

    【解决方案2】:

    这是你的错误,数组从索引 0 开始,而不是从索引 1 开始

    Settings.ECONOMY_MODE = Boolean.parseBoolean(args[2]);
    Settings.DEBUG = Boolean.parseBoolean(args[1]);
    Settings.SERVER_PORT = Integer.parseInt(args[3]);
    

    【讨论】:

      猜你喜欢
      • 2013-12-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-13
      • 1970-01-01
      • 2011-07-07
      • 2016-01-27
      相关资源
      最近更新 更多