diff --git a/protocol/src/main/java/com/zfoo/protocol/registration/ProtocolAnalysis.java b/protocol/src/main/java/com/zfoo/protocol/registration/ProtocolAnalysis.java index 66ea5ee2..6872f966 100644 --- a/protocol/src/main/java/com/zfoo/protocol/registration/ProtocolAnalysis.java +++ b/protocol/src/main/java/com/zfoo/protocol/registration/ProtocolAnalysis.java @@ -129,17 +129,19 @@ public class ProtocolAnalysis { .toList();*/ // 检查协议类是否合法 - var noProtocolIds = new ArrayList>(); + var noProtocolClassList = new ArrayList>(); for (var protocolClass : relevantClassSet) { var protocolId = getProtocolIdAndCheckClass(protocolClass); if (protocolId >= 0) { initProtocolClass(protocolId, protocolClass); } else { - noProtocolIds.add(protocolClass); + noProtocolClassList.add(protocolClass); } } + + noProtocolClassList.sort(Comparator.comparing(Class::getCanonicalName)); var countProtocolId = (short) 0; - for (var protocolClass : noProtocolIds) { + for (var protocolClass : noProtocolClassList) { while (protocolClassMap.containsKey(countProtocolId)) { countProtocolId++; }