设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4709|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 r; }" T  K3 Z: t+ j* V. v/ a1 H2 D& U- |3 T" y7 p, h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 ?* a" ^- z. N2 h' q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# J+ W; K8 S3 v* s3 Z# m' R) ?
swarm.SignatureNotFoundException3 J1 o4 y5 ^- @/ f/ ?
        at swarm.Selector.<init>(Selector.java:76), J! K$ Y, D. S6 X5 V* a0 {& {; `
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ T1 W- c, Y; F) T  r        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 k- F% e: X1 q* s9 B9 V+ c9 s
3 o& H: Y0 S+ e9 o& N

) o2 z% q; L9 dimport swarm.objectbase.SwarmImpl;' J- n6 L$ ?5 A. x: f- q! W
import swarm.objectbase.Swarm;
1 Y# J5 o$ y7 L: ]9 z6 c" limport swarm.activity.ScheduleImpl;1 D5 @, ^0 b  N3 ?" `8 ?8 `
import swarm.activity.Activity;5 K# J$ K0 w7 F5 D" C0 S  q3 _
import swarm.activity.ActionGroupImpl;# Q) x  Z9 x4 Y9 Y3 j% I
import swarm.collections.ListImpl;* B; l2 j& \( x
import swarm.defobj.Zone;
5 D# v6 N' p! U* ^import swarm.Globals;) z$ B" C( J- R5 _
import swarm.Selector;
0 ~+ Z4 H0 P  ]' r* R, }4 limport swarm.activity.ActionGroup; , I9 A' f: E3 C+ D. y6 i
class Agent {: }* c8 U) M/ h# u4 h9 Y
        char id;  F8 v9 o# i% W! `# z! C: [6 u1 w
' M# ^. N. s/ ^0 G
        Agent(char id) {
6 F1 H4 l1 r( u5 n" T! d                this.id = id;6 @! a8 Y1 W3 Z
        }* n) x6 C, Y# a- z! ~
% W' m# L9 v  o3 D4 j$ n4 V! Y
        public void agentStep() {- n. a* `; a; y% L: w( r2 u
                System.out.println(id + ":" + Globals.env.getCurrentTime());& B* J7 t- h8 O! T+ S8 s7 p
        }* h4 d. n- ?! }) O9 x$ a- `
}. J" J- E2 \: n1 d* h

; J2 s5 N, Z  o- K) I! Ypublic class ActionGroupDemo extends SwarmImpl {- _, p! W4 ~* e) O/ p
        ScheduleImpl schedule;
2 X4 h  |3 J/ P) w/ {! I. [+ k! W8 P        ActionGroupImpl actionGroup;4 u* y3 a7 u+ E5 A) x! O/ n5 Y
        ListImpl list;
+ ~) h( C; a' R0 D. r        char Id = 'a';
" E( d- l$ q& ~. S' K/ ?8 {! n7 z6 W/ J# w# W0 u
        ActionGroupDemo(Zone aZone) {- w% {1 I! a8 T( n
                super(aZone);
5 T1 T0 w6 ]6 N                list = new ListImpl(aZone);
( A; X6 w8 J/ g' X                swarmSetp();3 d% O0 f. i) H
                actionGroup = new ActionGroupImpl(aZone);7 Z) A7 \: s6 @
                schedule = new ScheduleImpl(aZone);- E# o$ u' R' f$ J
                try {
: T+ z0 x( x# Y                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
: Z& e1 r+ p# b' a1 h                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 U+ n7 }- q6 B0 r5 `' ?& ?                        ) o# ~; R; h  [) D
                        actionGroup.createActionForEach$message(list, agentSel);  F5 E0 f* ~" h+ `+ \
                        actionGroup.createActionTo$message(this, swarmSel);
: V+ p2 s5 K% \                        schedule.at$createAction(0, actionGroup);
' n' z6 K% o- H& ~, C1 g, k, v                        schedule.at$createAction(1, actionGroup);. X% {( S$ i9 ~- ^* P
                        schedule.at$createAction(2, actionGroup);
& H, H& Q0 B: M9 D% P
. V  K3 d' O$ [) X4 g                } catch (Exception e) {( W& ]' t3 w- s& P3 b* t3 D
                        e.printStackTrace(System.err);
. Q/ w/ X! W' a7 V" d                        //System.out.println(e);% Q/ T& M: g" j% m
                        System.exit(1);
: g: K8 |$ |8 x8 x                }7 B- u2 t8 z! A8 X

5 ~6 }+ x9 D0 H5 ?% w+ k+ w2 L* m  Z3 m! V8 V: ~/ m) _0 v. K
        }
. R) G; M% v& N9 s- _" t5 z0 [& w$ X. n( ~& V$ h
        private void swarmSetp() {5 e3 W1 R/ P; D) E$ X8 W( L
                list.addLast(new Agent(Id));; \) u3 R8 ?& ~% d5 h) X- N/ A* S
                Id++;
2 q+ p; M/ A5 H9 ?! y$ l        }
2 i5 k& E/ J3 k; q
; A* o: c5 H  {1 m& Z        public Activity activateIn(Swarm context) {
  ?7 N& y3 H6 T; S                super.activateIn(context);
# g* J& J1 s% d0 k9 n                schedule.activateIn(this);7 L( e5 J/ O7 B- G2 k  W
                return getActivity();4 V7 J+ V8 U3 F' {5 w
        }
5 [6 V% `) y5 w! G
: R# S5 u7 X: X% f& O* a        public static void main(String[] args) {
# c2 W4 R* D1 t, x6 P* v) F* `                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) h1 R- l! `7 A3 M" f$ d/ I1 r$ w
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 I* O! `3 `1 u( w% }- J; Z( ~                swarms.buildObjects();
! w' D) \2 f8 s6 U. S  g                swarms.buildActions();1 A5 {/ C) l8 ^0 {6 x8 L! r+ B
                swarms.activateIn(null).run();; O; _+ s8 i2 \9 N/ w
        }
1 e7 g3 C* t  y$ T9 Y$ V$ H% E/ `) h" u' o
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-8 09:38 , Processed in 0.016840 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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