设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6670|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 {" F* k4 _: }4 ]' i$ M/ V! k6 C. T8 W0 _- R$ @% W4 q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 @5 T0 G9 D+ P以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. y& H5 B% {  }
swarm.SignatureNotFoundException! s1 Y5 I1 B! F! ?& v% r
        at swarm.Selector.<init>(Selector.java:76)
# l" _, T. n# P9 r! l$ s) J: y0 V2 W        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! ?" B4 q; y- W        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ i) O3 z) A% Y+ J, e4 f! a
# D9 q3 J, o: E, N
% f5 r7 A- ^6 A; ?4 o+ T' R1 Nimport swarm.objectbase.SwarmImpl;9 H  o/ U) c( Y1 K; |, l9 N
import swarm.objectbase.Swarm;
8 g) |: K# T, R$ ~! P, nimport swarm.activity.ScheduleImpl;
8 U/ M; u7 d* `# Nimport swarm.activity.Activity;  T- ]% m% U5 N0 U& P: q
import swarm.activity.ActionGroupImpl;  B3 N, |" c" o( K* a. `
import swarm.collections.ListImpl;
3 C) u6 V( R  l% k  J" cimport swarm.defobj.Zone;
: m- m" |- U9 |7 o# ^# \import swarm.Globals;
0 @- E# D- j. Fimport swarm.Selector;6 r8 }- `3 z/ Z  p, m: ]
import swarm.activity.ActionGroup;
: @8 H' I  V  \class Agent {2 s) [* M/ S/ v3 O& `
        char id;
$ i, u: f, e" _2 B) c5 \- b/ b9 k
        Agent(char id) {' H3 G1 D. C! P* ~/ D. ~2 x
                this.id = id;
% A7 F: X& n- u4 F9 D: U' l        }
7 L5 u# o- ?7 B' H1 o7 V8 d( R+ b% m5 u
        public void agentStep() {
# c# N$ Q/ {. m) h1 y5 c                System.out.println(id + ":" + Globals.env.getCurrentTime());
" Z( F6 ]4 W( ]        }
* h2 v* o# k. J8 \0 ^+ f6 L! o}; t8 j  C# Z0 h8 v  ^9 E2 ^

$ V2 \+ x6 a$ f* r- R/ w5 Lpublic class ActionGroupDemo extends SwarmImpl {; S, L" B- D- `
        ScheduleImpl schedule;$ G' }" @: p/ w% v3 S2 f6 R9 }9 S
        ActionGroupImpl actionGroup;5 x( J) A5 J; m( t
        ListImpl list;6 [3 }% x0 n6 z6 A9 {' X3 `  o. o
        char Id = 'a';  q0 K7 J4 V% Y$ o& x% L
: f$ ^" ^8 O/ d; a% }1 t
        ActionGroupDemo(Zone aZone) {$ Y! i% U$ U. o
                super(aZone);
7 @' U. K) J% G* P  |                list = new ListImpl(aZone);
) x, N1 l* ]' S) `9 h2 Z* ?                swarmSetp();
4 D4 a* [  H9 }& X5 s( C7 r                actionGroup = new ActionGroupImpl(aZone);
( ^' @9 p1 ?4 C1 T* P  U; Y1 K9 P                schedule = new ScheduleImpl(aZone);
  `  w2 \$ q9 n, ?                try {
" g- i  A* }$ w3 L" ?- j: ?# w                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
: z) ]( ~; U9 b. W( ?5 Y                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 w  i/ H1 q; }; S                        ! Q6 K$ p2 r0 g
                        actionGroup.createActionForEach$message(list, agentSel);
4 C% Z1 @" }$ y6 {3 u                        actionGroup.createActionTo$message(this, swarmSel);2 i7 g$ s8 L3 z8 q
                        schedule.at$createAction(0, actionGroup);
: N, g$ k) m4 ?9 c: c* F                        schedule.at$createAction(1, actionGroup);
& O6 n. W- W% n                        schedule.at$createAction(2, actionGroup);
  |+ ?% Q; u2 M/ i% q: [- H) C: p8 o8 M6 q1 u% N% w( Y
                } catch (Exception e) {4 E7 N7 ?- O' u5 `
                        e.printStackTrace(System.err);6 J$ `; w" [' C( ^1 i- {( i3 c
                        //System.out.println(e);* [6 J' ~! O) M/ d/ L* i
                        System.exit(1);
6 A. {) P& j: [* _                }/ x' M  ^0 ~6 u- ^- w- p. \

0 R" }: c1 N8 q- K) A4 @3 ~) s4 S3 U+ k1 F# r' J
        }
5 s1 ^2 L6 g9 c% ^/ m
1 n0 Q' z7 d! N0 i5 \& s& M        private void swarmSetp() {
% @2 v0 M8 A9 ~) k8 B- F* P+ H" m5 R                list.addLast(new Agent(Id));" M: _8 Z4 f2 h* K
                Id++;
8 n( m& ^7 O$ t7 [0 F! ?        }
  F; o0 ]1 ~& s. ?6 z4 G1 H" C* P& K
        public Activity activateIn(Swarm context) {" @5 d* f/ J6 q
                super.activateIn(context);
( B- E& S, z# t6 B7 _                schedule.activateIn(this);: |9 X2 M  D: t4 g8 s' P0 B
                return getActivity();
2 N& `, X/ |5 n        }
6 Y6 I; a2 S, T& p  i  _$ q1 C: V  m, u% s1 U4 F1 f: d
        public static void main(String[] args) {. \) }& I8 m* s$ r3 X% G( d! o  I
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: v5 S2 O8 G5 k6 Q+ h4 I% B* A                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 t$ E" R5 r* y, m
                swarms.buildObjects();
' E3 j! S/ ?. n! \& X( t                swarms.buildActions();
$ ]" ?+ @3 g* I$ }5 u                swarms.activateIn(null).run();/ `% s" A7 ~; Z7 ?% l
        }
& Q' \' c0 C6 t" W! M. U. F
  i* U  E3 ]# d/ G}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-5 05:07 , Processed in 0.019343 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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