this 아마도 내 경우와 가장 비슷하지만 도움이되지 않습니다.반복에서 이상한 ConcurrentModificationException이 발생했습니다.
나는 여기에 ConcurrentModificationException를 받고 있어요 :
for (Iterator<ProjectileBase> iterator = projectiles.iterator(); iterator.hasNext();) {
ProjectileBase proj = iterator.next(); < here
if (proj == null || !proj.isValid()) {
iterator.remove();
continue;
}
if (((!proj.ignoreRange()) ? proj.lived <= proj.data.getRange() : true)){
proj.lived++;
proj.onTick();
} else {
MissileHitEvent event = new MissileHitEvent(proj.shooter, proj.wand, proj, false, null);
Bukkit.getPluginManager().callEvent(event);
if (!event.isCancelled()) {
iterator.remove();
continue;
} else {
proj.lived = 0;
}
}
}
을 here 을 제안 내가 한 비록?
목록은 다음과 같이 지정됩니다 클래스 건설에 intialized됩니다
private List<ProjectileBase> projectiles = new ArrayList<ProjectileBase>();
. 뭐가 문제 야?
편집 : 콘솔 로그 :
[10:01:58] [Craft Scheduler Thread - 3754/WARN]: Exception in thread "Craft Scheduler Thread - 3754"
[10:01:58] [Craft Scheduler Thread - 3754/WARN]: org.apache.commons.lang.UnhandledException: Plugin MagicWands v1.0 generated an exception while executing task 247
at org.bukkit.craftbukkit.v1_9_R2.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:57)
at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.util.ConcurrentModificationException
at java.util.ArrayList$Itr.checkForComodification(Unknown Source)
at java.util.ArrayList$Itr.next(Unknown Source)
at io.jettymc.DataHolders.ProjectileManager.iterate(ProjectileManager.java:117)
at io.jettymc.DataHolders.ProjectileManager$1.run(ProjectileManager.java:232)
at org.bukkit.craftbukkit.v1_9_R2.scheduler.CraftTask.run(CraftTask.java:58)
at org.bukkit.craftbukkit.v1_9_R2.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:53)
... 4 more
편집 2 : 글쎄, 난 ..이/스피 (마인 크래프트 서버 & API), 나는 Bukkit에이 프로젝트를 짓고 있어요 말하는 가치가 생각하지만, 이 오류의 원인인지 의심 스럽습니까?
콘솔 로그를 표시하십시오. –
추가했습니다. 여기에 오류 로그를 붙여 넣기 만하면 pastebin을 사용해야했습니다. – jetp250
여기서 오류 로그가 제대로 작동합니다. 질문이 자동으로 업데이트되었습니다. – Andreas