Repast error when doing Batch run, ERROR: InstanceRunner - Error while running model

Repast error when doing Batch run, ERROR: InstanceRunner - Error while running model

我已经在 Repast 中设置了一个模拟,它应该模拟人们登机。我希望 运行 多次计算各种方法登机所需的平均时间。该模型在 运行 正常时完全正常工作,然后模型输出工作正常。但是,当我尝试执行批处理 运行 时,它在控制台中给出了这个错误,它给出的最终模型输出只是一个空文件。此外,控制台显示此消息:

WARN [SwingWorker-pool-2-thread-2] 17:40:56,274 OutputFinder - 未找到匹配 glob 的模型输出:{**/,}ModelOutput*.batch_param_map.txt in /var/folders/nh/8k546jq14l5gnwkjgxvch8180000gn/T/simphony_model_1651246794058/instance_2

WARN [SwingWorker-pool-2-thread-2] 17:40:56,274 OutputFinder - 未找到匹配 glob 的模型输出:{**/,}ModelOutput*.txt in /var/folders/nh/8k546jq14l5gnwkjgxvch8180000gn/T/simphony_model_1651246794058/instance_2

WARN [SwingWorker-pool-2-thread-2] 17:40:56,275 OutputFinder - 未找到匹配 glob 的模型输出:{**/,}ModelOutput*.batch_param_map.txt in /var/folders/nh/8k546jq14l5gnwkjgxvch8180000gn/T/simphony_model_1651246794058/instance_1

WARN [SwingWorker-pool-2-thread-2] 17:40:56,275 OutputFinder - 未找到匹配 glob 的模型输出:{**/,}ModelOutput*.txt in /var/folders/nh/8k546jq14l5gnwkjgxvch8180000gn/T/simphony_model_1651246794058/instance_1

据我了解,一个模型在正常工作的时候不能批量工作,可能有四个问题。

  1. 它不会自行终止。 但是,我确定我的模型会这样做,它会在所有乘客就座后立即终止,而且我知道它会在所有正常的 运行 秒内完成。
  2. 显示元素 我已经移除了显示,并且在我的模拟中没有显示元素
  3. 模型输出 我的模型输出被写入一个文件 ModelOutput.txt,每次都使用相同的名称,并且在正常 运行ning 时它工作正常。
  4. 外部图书馆 这就是我认为可能是问题所在。我导入的唯一库是标准 java 库,例如 java.util.Random 或 java.util.list,以及许多 repast 库。这些可能是问题所在吗?如果是这样,我如何将它们移动到其他地方同时仍然能够访问它们?我看到了一些关于将它们移动到 lib 目录的信息,但不太明白如何。

感谢您的帮助!

使用 JRE > 11 时会出现此错误。(请注意,在执行批处理 运行 时,会使用 PATH 中的第一个“java”,这可能不是 Eclipse 使用的.)

请参阅此处的常见问题条目以获取解决方案:

https://repast.github.io/docs/RepastFAQ/RepastFAQ.html#_fatal_java_lang_exceptionininitializererror_caused_by_java_lang_reflect_inaccessibleobjectexception

此处指定的参数可以添加到批处理 运行 GUI 的 JVM 参数文本框中。