设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7598|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 z7 C8 s3 A' S0 O- @, @3 R! |
1 s; g$ o1 ?2 R' w
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# ]* N) ~/ n, n4 H% M3 f以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: Q0 |; [* H, L1 H- w
swarm.SignatureNotFoundException
( P/ f( [3 w) ^: v        at swarm.Selector.<init>(Selector.java:76)! ~) X2 {' C5 r% j& z9 M; u0 H
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ u$ t* S" x% o. B* U+ m# s        at ActionGroupDemo.main(ActionGroupDemo.java:67)) V+ p' c$ J2 Z0 u; s

# b8 }+ g! \7 X. d# i! q$ C/ B: z. ?; T1 X. l; k9 K& l' ]
import swarm.objectbase.SwarmImpl;
- }5 w- f/ u% \, bimport swarm.objectbase.Swarm;
) J# F* V% S  D8 k& F, @7 @9 F$ wimport swarm.activity.ScheduleImpl;4 N/ n- i# @; E! k
import swarm.activity.Activity;
( A) J6 n4 Z4 Z7 R& Qimport swarm.activity.ActionGroupImpl;; W! R/ A% F$ m& j% _
import swarm.collections.ListImpl;$ T- s: U7 B1 a, U% d/ z2 p% r$ n! x
import swarm.defobj.Zone; & b! i0 p% e1 [# ]
import swarm.Globals;5 C6 p) ?* ^8 G" ~
import swarm.Selector;; D  e1 x( c; g1 }& ~4 H4 d" g4 v
import swarm.activity.ActionGroup; + l3 M1 z2 o4 U6 K8 k
class Agent {( I( g5 N  U: Y0 P
        char id;0 ~8 g4 H" e& {8 `0 p
# _" ~  V2 }1 H( c  \  \9 N
        Agent(char id) {! h) v. I; u5 }/ _2 n. b
                this.id = id;
/ u' A1 k. e3 A% P' Y: s6 l0 z        }2 E+ e- g9 }$ v

* K# K$ U# E$ N$ [1 U        public void agentStep() {* e. B, [& R9 V/ r, M4 _
                System.out.println(id + ":" + Globals.env.getCurrentTime());( L, |- l% X6 [1 ?* d
        }5 @9 x# S4 R9 ~& m( }- p+ a3 W& C  ^
}
9 U; O3 a* R+ s. T9 k- v- }7 y1 l8 K! N, E
public class ActionGroupDemo extends SwarmImpl {
0 h, B* c/ b3 j) q        ScheduleImpl schedule;: g' i" M7 ~. ]- C; n$ }
        ActionGroupImpl actionGroup;! O' }/ e; l, }6 S4 E! j: e
        ListImpl list;, h5 h, i8 `1 k! t) P2 ^8 e
        char Id = 'a';& Z. T4 h$ {; a
  d5 h  b' w5 i. b: ]
        ActionGroupDemo(Zone aZone) {5 R2 d6 {; K) Y1 m0 i4 `
                super(aZone);
& r2 U, H/ B! x* I. [7 G( A                list = new ListImpl(aZone);$ [9 E: i& ?+ E) @& t
                swarmSetp();
& `: ?# l5 x- j# U2 V                actionGroup = new ActionGroupImpl(aZone);6 l  S% q( S4 s' Z4 W# ]$ d% V
                schedule = new ScheduleImpl(aZone);
9 C6 p4 T: c" P" C$ X% J7 y                try {4 ?$ ^& p6 j4 G% Q& I; M( C  V
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);# j$ [7 p& e: t8 f" Q5 Z) Y
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 a$ U* D0 J! i7 j' S& h) O                        . p2 Y7 j6 o7 ^$ @; @
                        actionGroup.createActionForEach$message(list, agentSel);
/ U+ I7 q' _& {( j7 d; o                        actionGroup.createActionTo$message(this, swarmSel);% c, N. L! c( A; a6 Q' k
                        schedule.at$createAction(0, actionGroup);9 }  O+ \3 x2 |: m" x5 z& r
                        schedule.at$createAction(1, actionGroup);
2 x2 I+ h! B$ G4 U2 P% I                        schedule.at$createAction(2, actionGroup);
( G, W* v/ c& T2 c
0 d2 Q! F' {, x, {                } catch (Exception e) {
, [1 h: n2 I0 i6 e; T                        e.printStackTrace(System.err);
1 n) f1 F" V7 Q0 e* Q                        //System.out.println(e);
/ c& F. |2 E  [3 J                        System.exit(1);
2 }7 B8 ?4 S7 ~8 Z1 G                }
2 U7 I' N) I" S# Y* m6 s4 D' z- p4 g; T, z  J

7 k: ^! [( [7 B+ y; Z: S        }  H6 m0 D7 `/ |4 p0 U5 A0 S
5 E- D! |8 K3 ~/ B4 o/ }
        private void swarmSetp() {8 P7 U0 b! o0 j" V
                list.addLast(new Agent(Id));
, w: ?5 P# u) d5 X2 L* d                Id++;
; |2 R' n" T3 v7 _( F. N1 p1 Y        }
. g) Z) {0 }( N8 M# s1 [% w4 a" [4 o
        public Activity activateIn(Swarm context) {" j, _' x* J4 W) d; p8 ]! K1 R( u
                super.activateIn(context);
; {6 ~/ L2 z& _- n- F2 p                schedule.activateIn(this);' z" P; v- }# Z. B4 Y
                return getActivity();
# B; ^0 ]; Y7 `- |1 W! R( B        }
; Y) ~! h0 t5 q# Q
% _; X& ~+ o7 C- @+ j' E- A        public static void main(String[] args) {6 {3 y# b; d! N" r( O
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& D/ l% i0 j7 [) a- Y1 `3 z8 i* Q
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 s8 D9 J' X1 `2 d                swarms.buildObjects();. J2 i, i; t' a  J1 w4 V$ W
                swarms.buildActions();4 z  A2 z  N" d2 ~) Q' [
                swarms.activateIn(null).run();
! T" b$ m5 U8 V' |9 e5 ^6 ?2 L        }" n* t/ E# W( ^8 I4 L$ W! [
8 U2 |% X5 M7 U6 r. F! p7 }3 |+ F" \
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-3-8 04:10 , Processed in 0.020280 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表