设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12814|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 d6 k% Z, ^; M& P8 v0 E+ u
3 a. x" F$ d7 L8 B0 J本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' a1 z3 `6 [) F; q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 @% v; ^/ ]; _  eswarm.SignatureNotFoundException- ^- D6 M6 o8 T$ Q; B2 `
        at swarm.Selector.<init>(Selector.java:76)
) l: W. L  q2 L" w1 q        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) N5 D! ]$ M2 @, E4 ]( |3 _/ q
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
% W$ d3 ~, w4 {* m" W+ P; H1 n8 m6 L! M/ m
  ~6 x, J& C" Y7 X
import swarm.objectbase.SwarmImpl;2 v9 c& {8 @; _1 N
import swarm.objectbase.Swarm;
1 u& G3 u1 ]; G; S- Limport swarm.activity.ScheduleImpl;, f2 [- T; v6 S1 b% z' X
import swarm.activity.Activity;
4 v% X! N* k0 [4 _import swarm.activity.ActionGroupImpl;0 C; t9 m& V( E& H0 p
import swarm.collections.ListImpl;. W! x& B( y/ E6 {7 K( i' [
import swarm.defobj.Zone; " E/ \9 G. y! g+ {3 `
import swarm.Globals;
5 i  l5 t, C; _; U# ~) }2 Iimport swarm.Selector;8 w- g( D! T6 ~# K! b: s# G2 l
import swarm.activity.ActionGroup; : g/ O2 }1 R( \  }% y6 f
class Agent {
+ k0 L) j6 m/ \) Y6 A        char id;! h- m) j$ I# y( E7 S& f
9 ^% k/ _( H$ p2 M
        Agent(char id) {
: b: o8 I, z( E6 z                this.id = id;
7 ]# a, |; C- D  K' I        }
0 o: ^$ s2 R* i. A* W$ Q7 o& Y" |' C5 L0 c5 p" N0 D
        public void agentStep() {
" x* ~8 Y. N5 _+ f6 {) k* Q9 p                System.out.println(id + ":" + Globals.env.getCurrentTime());
" C8 ]" Y- ^, Z! V9 m+ q. Q        }  F7 K; H, |: Z3 X. p
}
3 y0 M  n9 }( r) G$ v0 ]
3 }* \9 s0 s+ g/ I) g5 q# _: Ypublic class ActionGroupDemo extends SwarmImpl {7 J2 H  ?/ N' ~; F
        ScheduleImpl schedule;
, a" Q" {$ N* R        ActionGroupImpl actionGroup;" n! M4 K7 ~2 V
        ListImpl list;3 A" a8 R- p6 m/ o
        char Id = 'a';
' g' l( ~6 b2 S, b& f: q
, j. u/ F; c4 ^: @% g        ActionGroupDemo(Zone aZone) {/ A. s2 _: v2 U3 R: ?
                super(aZone);
" v9 K1 b0 F; l/ ~& D                list = new ListImpl(aZone);
- ^% {0 ?4 q3 H: N9 e  }$ |( w: ^) R                swarmSetp();* j1 t& {! ^0 k( P: `, i
                actionGroup = new ActionGroupImpl(aZone);
: Y. P$ x+ g& V2 E+ c. ]                schedule = new ScheduleImpl(aZone);" J$ B" C3 r6 _7 |/ K
                try {
6 R  m( E( f8 j& _8 `$ H                        Selector agentSel = new Selector(Agent.class, "agentStep", false);; r+ n( H+ M  ^  S% N# |
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# l! W% P$ I) s  Y                        ( w) c# a8 I. e8 q
                        actionGroup.createActionForEach$message(list, agentSel);
) ?8 m0 s, |8 K% @6 O# w                        actionGroup.createActionTo$message(this, swarmSel);* K& B) A  }# o: M2 i
                        schedule.at$createAction(0, actionGroup);! u, f2 z3 o( h# j
                        schedule.at$createAction(1, actionGroup);7 Y3 E! ]: C( e0 t6 [7 h" V2 s
                        schedule.at$createAction(2, actionGroup);
' R, M( l1 R4 Z. G
% K. |- ^5 N$ }, S' M                } catch (Exception e) {, S( N8 R! _$ w3 o& j/ z
                        e.printStackTrace(System.err);  o  t+ v5 P+ x( K
                        //System.out.println(e);  A* B# _1 B7 D& H3 u
                        System.exit(1);
- G6 y: J& |  P  W  L" o                }
/ c1 [% I$ r% x8 E3 w8 r: _% Y7 V0 @% C: O" @0 S
' J. W+ N0 K9 r6 ~
        }& \4 \8 \2 I" {& r
: l' L0 m2 H9 Q: B/ B$ I
        private void swarmSetp() {
( g5 b2 N/ J; }5 k0 W: {+ ^                list.addLast(new Agent(Id));
) [" {$ v' a9 `6 |. _4 B8 V                Id++;# `# ?) B$ R" A- }+ N6 T% \1 C
        }
9 M0 ?: Y8 X+ R8 C
7 a$ a- a0 Y. u  U        public Activity activateIn(Swarm context) {; j' x$ r2 r: {  T8 q6 [
                super.activateIn(context);
" M# O2 k9 Q: m; H% ]. Q6 G                schedule.activateIn(this);
5 \$ F: B4 ]* U5 I7 Q" m                return getActivity();  C- K" d0 u; L) I! j3 l
        }" p9 m6 v( x1 ~2 B  Q) w
4 }' C3 e9 f1 `/ e+ J: }( v6 D
        public static void main(String[] args) {
$ w7 _2 X3 `+ o6 C  O                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 [: i9 Z" P) ?- ]( y9 m, z  r
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- `' P- _, ^5 L  X                swarms.buildObjects();% H9 F2 t& o8 b* v5 @
                swarms.buildActions();
+ K2 n# @; y4 A# }2 H                swarms.activateIn(null).run();8 u# x. L8 ^; j! V
        }2 j1 {7 M$ \" Z) T
6 ]/ c) _3 F" [7 X- I1 l; K1 J
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-20 04:18 , Processed in 0.018471 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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