设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7466|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! c5 u8 Q4 c: I3 N! i& {+ S1 t0 N( z0 r( i" Z8 k* ]
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, R* \2 c  w) X4 G以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 C$ K# T" _. J3 f7 e3 ^swarm.SignatureNotFoundException* [( q7 R$ k! H; J( H" F' J" `7 w
        at swarm.Selector.<init>(Selector.java:76)
$ T$ C4 S  G' n3 i% \        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 f) A! T" i& P( _9 \/ K5 t
        at ActionGroupDemo.main(ActionGroupDemo.java:67)2 v& T4 w% j9 T+ F* `7 i* b9 n% S  r( @
8 h# o, s5 s* b8 z+ h

' l& }; z9 d7 \* n) }import swarm.objectbase.SwarmImpl;
. H  h5 `; N$ r* p7 {import swarm.objectbase.Swarm;( v* h- Z! [  \! O/ [( T" ]
import swarm.activity.ScheduleImpl;
8 ^9 G: C3 }0 b6 ]8 C+ V, pimport swarm.activity.Activity;6 U. I' U" S. k6 F  e6 v! b0 F7 f
import swarm.activity.ActionGroupImpl;
, X5 d, K7 {- E$ n9 l. G  Bimport swarm.collections.ListImpl;
( f- @( \) |& s. Kimport swarm.defobj.Zone;
6 y0 L( h* }6 _1 T4 `; Vimport swarm.Globals;
+ _7 O9 A, s5 cimport swarm.Selector;
3 k) u/ ~) i7 c, u5 eimport swarm.activity.ActionGroup; & l2 j0 A% ]2 c  ]8 A/ F; |% j
class Agent {
; c( Z5 x7 ^/ E        char id;
6 y' H; b. {' i: G- F: p8 ~& T1 i0 B) l( X. F) L; `
        Agent(char id) {8 O7 Z# p) \7 \0 S1 y9 m& y
                this.id = id;5 q  ^* e1 z. g; s
        }
$ S1 W( \+ O1 ^  K$ q; N: P* V% r+ M4 f9 D1 Z) W3 ]
        public void agentStep() {
& O# D& |/ R) h  l                System.out.println(id + ":" + Globals.env.getCurrentTime());
2 k$ J3 e- }5 K) z* u$ K        }( R# x6 i2 \' {
}
% e4 s4 b0 M" d- R/ g4 n9 o1 Z" t, E
1 e- g* y, p$ y4 w5 bpublic class ActionGroupDemo extends SwarmImpl {  v7 ?* M6 l* q) i3 O0 G
        ScheduleImpl schedule;* ^7 O2 q1 }" _
        ActionGroupImpl actionGroup;  S) y! a$ g3 `5 t0 B
        ListImpl list;
+ w/ m5 I3 M( _9 H* w        char Id = 'a';
; I. u: S. k0 N% x8 }* k' j% j9 C. j+ }( ?
        ActionGroupDemo(Zone aZone) {
; g! s6 [. A' f) E                super(aZone);* }8 a) \" P9 O+ M
                list = new ListImpl(aZone);
0 N2 j. t  S+ W0 }+ y. J: b                swarmSetp();
0 R: j% u' k! X3 P7 ?                actionGroup = new ActionGroupImpl(aZone);
5 p' X" L* _+ s" y( e                schedule = new ScheduleImpl(aZone);
4 K9 k( D( {, Q6 R* A: k                try {5 O" S3 H- w8 B9 J) w; S1 K
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);2 t' ~# c- R4 e- C5 e
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: g$ U6 W$ v( Y% M
                        
' j# O5 q2 i) R" J& n/ x, Y6 X0 v                        actionGroup.createActionForEach$message(list, agentSel);
: n) t/ p$ a- N* p: j# `                        actionGroup.createActionTo$message(this, swarmSel);
: l8 M7 ^) e6 f- t  b2 m2 V0 w                        schedule.at$createAction(0, actionGroup);* }$ A$ C* N3 f) _! g- {
                        schedule.at$createAction(1, actionGroup);. f: j9 _/ \) t
                        schedule.at$createAction(2, actionGroup);5 C2 a1 F; H, }( v
( S* D% J' `# M- X1 D; Z
                } catch (Exception e) {
+ |4 i  s6 U" q                        e.printStackTrace(System.err);* b# b2 `0 z* p3 J$ }
                        //System.out.println(e);$ W6 z+ u7 S) A0 p2 R
                        System.exit(1);
$ U1 `/ l+ @/ v0 H                }! ?+ ]6 F7 e; y* z$ j% C

0 G: p. q6 T6 m/ p* J7 m* K  i, x
. ?' {7 C& g8 f: {        }, Y' A/ |3 n6 }) T: G) N& ^
# A, u5 u! L  ?2 J- i
        private void swarmSetp() {
7 h) p4 K. h" L                list.addLast(new Agent(Id));
- l/ `) e( I$ v                Id++;
& t: E  J5 R; O% u. s, b+ f8 g& H        }" l' N2 C3 Q3 P2 W6 B$ z
& D  b# k; }" K7 {
        public Activity activateIn(Swarm context) {$ P. n8 y/ b7 R3 x& A% p
                super.activateIn(context);( |* R* v: P+ `# Z3 F) S
                schedule.activateIn(this);
0 f5 a: D! t1 D8 X: t                return getActivity();
. u: K) {$ x  e& k' Q        }
& B# z) p3 `) H( b3 p* J. n4 x/ b& B7 ?* u" V
        public static void main(String[] args) {
2 ~  T4 ?8 d, G4 Y                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, H7 |! d8 E# s$ u4 C7 a7 H2 l& f                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 W" d1 V) U$ _9 i! r/ Q+ |: q                swarms.buildObjects();# L' s1 A6 y/ Q3 ]# ?
                swarms.buildActions();
" X6 L: n! \! l3 @/ T                swarms.activateIn(null).run();
: }- m; C0 o4 z( [; \        }+ [9 L  i/ M; x& G2 t: U

# E& R6 a* d' d+ g}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-3 19:36 , Processed in 0.014981 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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