设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13235|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 H, ~0 J# Y; x0 Q
8 y5 F* q& o( _2 J+ u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% {2 Z. k! d$ A9 w8 Z& z+ Y# X" A以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& m, S" C# G% g$ {5 V
swarm.SignatureNotFoundException
# F! x" q% l) M2 J! N+ ]6 P: P        at swarm.Selector.<init>(Selector.java:76)
% h- C! @6 W% _        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ ]' h  U1 {! F/ G) h        at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 U& r1 e/ X4 |0 A% ]& l* V/ {3 k% @  W+ j9 N+ @; F

8 y% j/ ^" w, n- n. H- [9 Mimport swarm.objectbase.SwarmImpl;7 w- {/ [$ M4 _
import swarm.objectbase.Swarm;
& }& a/ X# J( `$ e8 R: d" Yimport swarm.activity.ScheduleImpl;. d  S0 u7 b* X4 Q* e) ~
import swarm.activity.Activity;
: {: |2 t0 x! Limport swarm.activity.ActionGroupImpl;
, i" X  M# X; \7 o. T: `import swarm.collections.ListImpl;+ T0 H+ v# x4 [6 {* I8 z( U0 X
import swarm.defobj.Zone;
5 L0 _+ V% X0 qimport swarm.Globals;
9 W% s- L" \/ K) b! P% q' }) F+ cimport swarm.Selector;
: b* c" G4 [4 _8 zimport swarm.activity.ActionGroup;
! }4 U: C4 y* P7 kclass Agent {& ^9 n- ?$ U/ d8 |" b$ [8 [
        char id;' k5 z5 k) L. o8 k

* F$ H5 w) _; c! S. Z        Agent(char id) {( Y- w+ a: M8 ]' @
                this.id = id;/ Q, c( k& k7 _+ z; X: I
        }) @! I6 T9 T+ s

2 S9 w8 s# t- |, u8 m( ^. ]        public void agentStep() {3 f; S, m2 W: C6 }) o
                System.out.println(id + ":" + Globals.env.getCurrentTime());; L- I, ?$ N4 ^
        }
: }" ^7 [8 \& U" s% R: k. X2 W6 C}
4 ?- l5 v: [2 ~9 r- C) r0 e) p8 S4 n2 P& z* Q% _
public class ActionGroupDemo extends SwarmImpl {
4 g$ q" Q. [6 }) U: U, Z3 J6 W        ScheduleImpl schedule;2 F" ^& A) S2 j/ ?/ k
        ActionGroupImpl actionGroup;& N5 }( M# B3 I) z
        ListImpl list;" Q+ ?. D9 k4 ?( l2 \) V  c3 b
        char Id = 'a';. }8 V2 r& ?4 l1 c+ l

7 S; ]+ h5 _% S: c7 S3 g' f. l5 O# c5 _        ActionGroupDemo(Zone aZone) {
# R: l2 v( E- {7 B8 D5 ]                super(aZone);
; z6 |, ?4 R/ X" V                list = new ListImpl(aZone);
/ I4 Z$ R; p6 ]+ K                swarmSetp();8 g3 u  k  R& q- f
                actionGroup = new ActionGroupImpl(aZone);
1 d( S# m6 i1 |; z- Z, S                schedule = new ScheduleImpl(aZone);/ h. y, J) i% K7 ^$ e$ Q* V
                try {
+ ]" ~4 ^! a% o7 J/ a+ E                        Selector agentSel = new Selector(Agent.class, "agentStep", false);$ ?2 @+ K3 I5 L0 f
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# H2 V8 A4 w- w3 I" H  H                        
2 h7 I  j6 I! ~, ]0 W, h% j) ?* _                        actionGroup.createActionForEach$message(list, agentSel);% }; m4 I: X1 ^. c5 Z* A
                        actionGroup.createActionTo$message(this, swarmSel);
8 q6 `6 d; Y" r. I# x. q* \3 V                        schedule.at$createAction(0, actionGroup);9 T2 D& }( w/ ?4 ^# Z
                        schedule.at$createAction(1, actionGroup);
( B' G) G* ~( `7 W. V) t& X                        schedule.at$createAction(2, actionGroup);6 u  C- ~/ ?% p# R
/ c' e8 d2 A! ^$ w- F
                } catch (Exception e) {" i2 y% O% B& z( P+ j% K
                        e.printStackTrace(System.err);/ A! j" Q( \2 ?1 q" M
                        //System.out.println(e);
7 D$ K9 Z0 E" R& S                        System.exit(1);# R" ?& [! l; ^, o5 [& R: q
                }
& {- y/ ~) o" M, ~, u1 |8 Y6 K) e, ^" A4 a* f4 @7 v

8 g, G( h  o# L2 Z# f; Q5 @        }( w$ V4 G9 K4 S3 X3 A
8 e% r/ t' }7 K$ \# ^* V: a8 r! ^
        private void swarmSetp() {
9 t- \0 \9 y  J7 d                list.addLast(new Agent(Id));
$ k. [$ ^' q: _+ V/ g0 Y/ e: P* j                Id++;9 U' s; o0 R1 G& a
        }
% R% x: b( V( m
; `- a# e& Q, n0 j/ [7 n4 Y1 Q        public Activity activateIn(Swarm context) {
% O' E3 X; Z! h3 r( h" F                super.activateIn(context);  F5 F2 d  n6 r% X" _) \
                schedule.activateIn(this);
. C3 `7 a. D* K6 L$ m, k                return getActivity();
) s3 K' r" v6 |. @2 {- d        }
( z4 }- a# o" {0 ]2 [. o  ^" n: l% d  L" N: V
        public static void main(String[] args) {
2 U! r, v( I4 A                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% f5 K2 R  U9 A$ R: l                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 `$ o: p) {& n3 B, T
                swarms.buildObjects();% O4 w4 M! A9 o. ]( C7 k2 ~
                swarms.buildActions();
  z* U( I$ G; n8 T2 q3 s                swarms.activateIn(null).run();/ _# U- F$ Y. j$ i. Z
        }" B- W/ c% @! s
4 G& t' P, k0 E4 j& f  }' d
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-1 09:14 , Processed in 0.017538 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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