设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6423|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
  k- d5 r( q  M7 L3 y! ^
, ~) d; Z: z; K8 P# r3 Y" W* Y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 y5 Z. s9 D2 w  L- p, v以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# F: D* `. Y- _9 G2 U+ @swarm.SignatureNotFoundException- [/ Q# j+ I7 E# w' E: f
        at swarm.Selector.<init>(Selector.java:76)% w3 c3 `* l7 G& [) K
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& v. w% J5 X  F6 r. t+ @2 a$ K        at ActionGroupDemo.main(ActionGroupDemo.java:67): D0 W- J! }6 g
3 p% C7 K" S* a
( ~( s) A7 M. b- E$ E$ A
import swarm.objectbase.SwarmImpl;
0 p' `& J7 W, y+ limport swarm.objectbase.Swarm;$ r: s: N$ X( a! j' N1 H
import swarm.activity.ScheduleImpl;
( f! o( s" I! ~4 @9 Eimport swarm.activity.Activity;$ D8 F9 v: m! Q  }! X
import swarm.activity.ActionGroupImpl;
7 A4 [5 h9 _+ y8 ^import swarm.collections.ListImpl;. @- m2 I: ~( S9 Q6 W
import swarm.defobj.Zone;
; Z- Q# V4 F/ Nimport swarm.Globals;
6 j# u; l* e& G" N; pimport swarm.Selector;
$ g( n4 g2 B# |5 z  k; [: ]9 h2 gimport swarm.activity.ActionGroup; 9 m/ Z& }" g3 w0 I3 i8 e
class Agent {
; Q' X+ ?& \0 k' }9 V4 D1 `  g        char id;
# K. B6 W! h9 O! b2 {$ ?7 W( ^+ a4 G1 y% e
        Agent(char id) {
3 [0 E! B9 v3 B( F) D                this.id = id;+ {8 R! q8 `! ~4 I) s$ y+ s
        }
5 N$ {( }7 B1 i% t4 @& u8 v1 F+ T! o& k3 J$ D1 d
        public void agentStep() {
, [" V9 m+ o: C5 v! Z2 a0 T: e                System.out.println(id + ":" + Globals.env.getCurrentTime());0 X$ \' Z9 h  K
        }1 M" v  d( a/ h
}5 r) @1 F. ^* ^+ \+ o  N( s9 u

1 Q5 Z! l- ~! N7 ]9 ^public class ActionGroupDemo extends SwarmImpl {' j% i; k4 U2 H+ i) N: z
        ScheduleImpl schedule;5 x1 x7 d5 i# f: B! Z, i- _
        ActionGroupImpl actionGroup;
5 R0 k: j# G1 n0 w# q( E# g7 }        ListImpl list;7 x: S; @) o8 C
        char Id = 'a';
" }' V! e2 ]$ U. l/ _8 Q# a0 e+ I, i: d
        ActionGroupDemo(Zone aZone) {
/ R5 ^+ b2 z9 E% G                super(aZone);
3 `( B  q) w- G* S6 Y: l                list = new ListImpl(aZone);
/ ?. b1 {9 B' E8 t+ ?) L                swarmSetp();
( x; [9 L. n- N6 v0 y                actionGroup = new ActionGroupImpl(aZone);9 ~* I; z& @$ H) d! E
                schedule = new ScheduleImpl(aZone);  A: K$ w9 Q4 Y+ X6 }
                try {) t6 X# L  Z: e& m
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 Z) R9 x/ ?, ^  @* r; ~                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ t2 e  X) ]% a5 K7 X: K; e                        
& a( |0 J7 L) J9 f' h8 D                        actionGroup.createActionForEach$message(list, agentSel);$ }3 ^+ v( I( r( f; u/ H: a
                        actionGroup.createActionTo$message(this, swarmSel);! C+ r7 x" q3 X, |0 w
                        schedule.at$createAction(0, actionGroup);
1 D$ A; G! f9 H$ h                        schedule.at$createAction(1, actionGroup);+ I& |' B7 h7 z% Q6 E- a
                        schedule.at$createAction(2, actionGroup);3 H7 z# Z8 g) T# o
! m! r# }" h# t7 ~: K
                } catch (Exception e) {% h5 K: p9 e" O- N& i: D' ~
                        e.printStackTrace(System.err);
5 W4 q; T; Z/ r                        //System.out.println(e);; K  S4 @( y8 n( C6 F: _% k' y
                        System.exit(1);
$ d3 ~8 E: |; s" H                }; \# q& R: R! l
( m( }% v" S9 [8 ~  e

  R. R% f8 A0 q- D, J$ L        }
$ c$ `! U  C. H4 Q
* z- J1 Y' w5 H8 m2 p6 f! P        private void swarmSetp() {
! f& L' [! H, `) d! v6 l                list.addLast(new Agent(Id));
* D/ z7 |  w! i% C                Id++;0 m# E+ Q1 ?3 V( k' U( n9 U
        }
) m2 z) G* S! C0 ^1 Q6 }
, Y/ I2 Y  X7 a1 U1 H$ c        public Activity activateIn(Swarm context) {& c" O! p  P; X0 {
                super.activateIn(context);1 a8 T% h1 W3 ~/ Q* E
                schedule.activateIn(this);
; Y, V: z# V/ x& `+ d                return getActivity();
4 a6 u9 g4 k, v; j        }  Z5 S" O5 A5 d, c$ P: i
' H4 H8 Q; S2 i  R1 O
        public static void main(String[] args) {! `( z! Q5 ~( W8 n! H/ X
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" V, N% Q" _6 b" L2 k: S
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 Z+ k- y" M- K1 L6 B% f( q
                swarms.buildObjects();
. i* y& e* C* o9 G7 b. N: A' ~                swarms.buildActions();/ S* \/ K6 S6 h% ~# Y6 i6 q& E, P9 m
                swarms.activateIn(null).run();
& V+ g+ l! i3 O' \        }, s; l# R1 n3 ?1 Y! Q( ]8 u

, V' R* K  n% T7 i2 \}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-28 06:24 , Processed in 0.019120 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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