设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10553|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" ^5 A$ S6 y) z$ p' O) z: G: }! h+ m: }3 Q9 y. C4 r
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% e. g  H8 P  S7 d9 J: O* w
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 d* f* _$ y* k+ }
swarm.SignatureNotFoundException  `4 ?* T5 p( [) s( e( q
        at swarm.Selector.<init>(Selector.java:76)5 T9 \$ _* o) H  q1 n$ \
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ e, f4 G& p6 d: v6 C/ G0 @- T        at ActionGroupDemo.main(ActionGroupDemo.java:67)6 q+ T  ]. h3 F) A+ q2 D
, l2 ]$ h0 `  A: ]7 [/ l! S

' K" V' P  D; D. u" U5 g) Timport swarm.objectbase.SwarmImpl;+ s0 A5 |$ h( U) o  _( H
import swarm.objectbase.Swarm;
+ K" M  V& j6 I% ^9 dimport swarm.activity.ScheduleImpl;
8 t( `$ p# _+ r7 ~; r# j8 oimport swarm.activity.Activity;) \$ S% F( d  ^( z8 {7 q
import swarm.activity.ActionGroupImpl;; w1 ^0 L! N; \" z
import swarm.collections.ListImpl;7 U( J5 a" F- j- \2 p
import swarm.defobj.Zone; 2 G* e1 P- X7 u. y+ C4 f
import swarm.Globals;' k, S7 q7 z) X* k; U' o
import swarm.Selector;
( _# N( ?1 K8 gimport swarm.activity.ActionGroup;
4 o' w: ^6 a; c: I/ T9 tclass Agent {
% X* T1 H! w; p: b; O3 D        char id;
! J+ Y  X: r! Y0 Y
+ x) `6 Z! a( v        Agent(char id) {& ^5 B/ |2 B( Z% u8 r4 u
                this.id = id;
7 @$ a& z* Y  j3 F1 l; a4 p1 m/ T        }
5 |2 k, [1 I( x3 g" S4 a$ |5 v5 w* I; D) U9 A
        public void agentStep() {  y' `  }. E9 N$ B$ k% W" k
                System.out.println(id + ":" + Globals.env.getCurrentTime());6 F( i" @* n2 h/ D+ h4 G. ~* R% _4 _
        }
* L2 ~- @6 U: Z9 _}% f3 }; ^# a3 \" f' @' ^
  s8 W( ^8 i( G/ O) I8 }
public class ActionGroupDemo extends SwarmImpl {. t  k; ~. |5 Y4 ?- V4 Z4 ^& x7 Q
        ScheduleImpl schedule;
# p8 U6 l- b% M( Y4 |& G" A# Q        ActionGroupImpl actionGroup;& @5 R: t/ o0 J& U7 H
        ListImpl list;
# O' [' {* A4 z/ l6 j- W: M        char Id = 'a';
. R& }2 _  a3 K8 N5 }+ H" S3 a1 \, v2 D1 S* O. b2 A. a
        ActionGroupDemo(Zone aZone) {
0 \& z  N2 j% ~$ O4 _( F3 ^                super(aZone);
, i8 V9 `  C' k1 V" Q                list = new ListImpl(aZone);7 y5 X) D* L7 L) C  w2 s2 w) U; l1 p
                swarmSetp();9 r4 D4 m, b- B) }; Q0 g+ f
                actionGroup = new ActionGroupImpl(aZone);
, g; o9 L& I6 U% u( H; m+ {                schedule = new ScheduleImpl(aZone);
  `0 \# J' N9 Y  X                try {
/ I7 c2 F) q! K$ C% F                        Selector agentSel = new Selector(Agent.class, "agentStep", false);' z5 w3 q, {0 O4 v8 v( s. k
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. k" s2 \5 ^4 T( E3 \# t
                        
0 W5 w1 `: F3 m1 _                        actionGroup.createActionForEach$message(list, agentSel);. E( u# k+ i4 y& ]) w
                        actionGroup.createActionTo$message(this, swarmSel);9 s) b" a: p2 Q  s/ t: T
                        schedule.at$createAction(0, actionGroup);$ z) e! e0 {9 F( x- M
                        schedule.at$createAction(1, actionGroup);
& z) K2 G6 `% ~! u8 S                        schedule.at$createAction(2, actionGroup);6 d1 M# q4 C% S3 N+ ~3 ~

& C$ w* E# ]% I' n# d+ h5 I                } catch (Exception e) {' V. @/ p& v, r. Q  K
                        e.printStackTrace(System.err);  T8 ?2 G+ i) J& K& X6 D; S0 W
                        //System.out.println(e);
3 k+ b+ e: u, u# M                        System.exit(1);( l4 L' @  R4 f6 }* o
                }
3 {  c( s5 p- p' I8 _) z5 u9 W6 a7 f! Z8 {

( A% w0 ]  \  i; o3 r7 o2 Q        }% |; t; q& l: D( @. T

) x1 ~, J1 O! E4 V5 Z        private void swarmSetp() {
" M. Z7 M1 M1 _" A$ W                list.addLast(new Agent(Id));4 n7 d) R  Y: X6 O+ \
                Id++;
  l  J2 I% ]7 _( n- z6 P$ S        }
, ]$ o! k- l! F. i/ M5 h  V6 S+ Q/ O( h3 {
        public Activity activateIn(Swarm context) {
' x$ ^$ a. M* K% I6 y0 m1 M                super.activateIn(context);# ^8 |" V; [% G" _5 }( N
                schedule.activateIn(this);
! a3 ?9 t1 x3 e                return getActivity();1 K% a' @, Q4 k2 Z3 w3 H, a$ q
        }  k9 k" ~( l, F' [8 `+ \  v, I
+ H" F7 ?% U1 ~# ^- k3 n) K
        public static void main(String[] args) {5 A5 ?9 P0 r+ A+ C2 Q! M; q7 W
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% L# U$ I) z% z: z" F3 u
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 }0 d4 W6 T: E' d. |1 q
                swarms.buildObjects();. G+ ]2 u4 Q5 `# [- Z
                swarms.buildActions();
2 P  L' f* @: N1 X                swarms.activateIn(null).run();
8 `  ~( q5 @, r8 _. M, P) N5 D) q# y        }( U, ^: f) h: T( k6 w* i9 h
% E+ m5 w* {8 m2 S
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-17 02:36 , Processed in 0.011388 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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