设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12749|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ D5 K, g" h, {3 s8 _+ n
4 e- n( k! e9 e本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 i( ^: M8 c  Y. ]以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 T3 y1 L' N- y$ T" q* V1 H9 O( x! |& D
swarm.SignatureNotFoundException- i9 K% u# {( U! `+ s
        at swarm.Selector.<init>(Selector.java:76)
8 o1 e4 [  S! H6 q2 V2 M  H/ B        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 m0 \2 X7 w& o& _, h% S  |! j6 S
        at ActionGroupDemo.main(ActionGroupDemo.java:67)& P# ^. b! f2 @" N" x1 b
$ {/ B) q6 t; K, Z; E" \
; e) |. x% M8 I& ~
import swarm.objectbase.SwarmImpl;  o8 `" V8 |. G8 M& I) Z/ y
import swarm.objectbase.Swarm;' g) M8 _$ J; o+ ]5 E
import swarm.activity.ScheduleImpl;* z7 k6 e4 \9 T, v* D- ~4 l
import swarm.activity.Activity;0 p' ~1 }9 l0 M: P3 |
import swarm.activity.ActionGroupImpl;
7 _+ x7 f0 j* x& g+ Pimport swarm.collections.ListImpl;  o2 c! ?4 b) @4 x9 Y
import swarm.defobj.Zone;
; B5 a" t; m' E$ eimport swarm.Globals;
( A, \) f. I- F" q- V5 K4 o1 D7 l8 ?import swarm.Selector;
1 ?- g% V0 Z: O1 i& A% \" nimport swarm.activity.ActionGroup; ; u+ I' M. U" \9 F/ u' @- v3 b
class Agent {0 w: y( X0 {# L% _
        char id;
- C6 o+ ?1 ^  Z/ w8 E4 `9 Q5 X2 L1 N8 u3 Q( {6 z! @
        Agent(char id) {2 a2 E1 a9 C& r$ N: Y& K- j/ r
                this.id = id;9 W/ `) T/ q% C+ z: ]" D
        }% Y' u  R( D8 F! U3 `

8 k3 u$ G$ m# Z        public void agentStep() {
, H% T# o5 `# u& d& k7 q4 t% v                System.out.println(id + ":" + Globals.env.getCurrentTime());8 C6 h' Z; C0 E% z
        }
, S3 M) [, y" M( z- Q  }( D7 ~2 w}
+ Q% i1 L# q9 m& Z7 ^; b4 Q, a4 k! W4 X% I
public class ActionGroupDemo extends SwarmImpl {1 m& H' I' \9 l6 M* C4 k
        ScheduleImpl schedule;2 p1 s& q5 i* `$ k9 N1 X
        ActionGroupImpl actionGroup;: l6 f7 [9 \' e" O
        ListImpl list;" H% y5 }" _( J* j) ]" D
        char Id = 'a';0 N- J5 ?- i4 c! K! y% U

/ Q# [  s2 w0 A2 q* i1 {( o( J9 O        ActionGroupDemo(Zone aZone) {8 p+ X! ]7 Q) u0 x) C# j
                super(aZone);" n* ]6 B1 c3 B& F  ~1 j/ x& w
                list = new ListImpl(aZone);' o4 t! E( s5 w0 {- j) H6 ]
                swarmSetp();  s5 o, ?7 j& x) y  y. I+ Y
                actionGroup = new ActionGroupImpl(aZone);
3 T- w1 T3 z! l1 `& f+ x4 o6 |( T                schedule = new ScheduleImpl(aZone);
& M. a: }  k5 v% t, r                try {
2 w1 U4 R1 l2 h& f- ~                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- M9 F' p3 L( t: G
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 }( U9 X0 ~1 b2 \# ?4 h4 L
                        
4 ]% y1 g3 `8 f0 z3 Z5 U( m                        actionGroup.createActionForEach$message(list, agentSel);
: h7 V: y/ b% h9 l2 z9 ~: ^                        actionGroup.createActionTo$message(this, swarmSel);
' ^% G: z  d2 V5 B( C% u: G' n                        schedule.at$createAction(0, actionGroup);
' v& m# V3 u2 J  w% q. V& q# D# g                        schedule.at$createAction(1, actionGroup);# f: U1 t+ H" M5 ?; n
                        schedule.at$createAction(2, actionGroup);/ \0 R2 @4 l$ [4 }/ O: Z9 j

9 ~1 F% _! a/ A3 a' x3 \; L. u                } catch (Exception e) {  Q8 u' A, j4 R9 ~6 c; T
                        e.printStackTrace(System.err);
: l+ b' ^) E* X/ ~! t                        //System.out.println(e);* ~. K  s) G: p% n8 O
                        System.exit(1);
1 _- J; i% s7 c                }
; a% ]% q& r) F. C+ E
5 Q9 q0 Q2 t$ M; Q5 u+ H! p; A* w0 O
        }/ @2 }; N0 `0 e  j" I) b, N
9 O& E2 }8 X8 @. d4 l7 `/ K, U
        private void swarmSetp() {. G: Y9 F3 u" X( B: O% @# X/ G, e
                list.addLast(new Agent(Id));
) p; k6 x' ?6 k) k* X% v/ _2 U                Id++;6 ]+ C1 C, x7 i
        }
4 W( x: Y5 \( Y; J" r: p$ F+ O' Y6 L8 c# k! R; g* h9 `
        public Activity activateIn(Swarm context) {
* ^: b6 r& _% D2 v1 {) M6 a* g1 \2 ^                super.activateIn(context);' d6 m; _# q, F+ _
                schedule.activateIn(this);
) n+ ?7 X, k7 X( T                return getActivity();! u; m! C4 o: H( N9 H: Z1 D6 d  L$ d
        }: H. B% g: |7 P) L8 b+ C) Z

% G1 a3 z( l' i! q3 A6 F        public static void main(String[] args) {
; T# k5 p8 ^0 D$ X1 V0 e/ T                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& y9 }* u9 `2 q                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( x* _; v8 ^+ w
                swarms.buildObjects();
; b2 s% y3 ^: p2 ?- u7 ?! {                swarms.buildActions();# U' P0 E. c# p
                swarms.activateIn(null).run();
" ?0 u  ~5 _0 o- {, L        }" D+ r0 ~$ ]5 ]8 p/ _
; b! q% P+ E7 l* G
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-18 00:51 , Processed in 0.019641 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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