设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6434|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 6 m6 ]$ x6 t+ T7 Q
' o/ R+ Q7 j9 C8 B. R( d! E
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 }" Z* a9 n; d, u; p, _8 M" \以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ Q) L; a6 X, K" Z* l5 Wswarm.SignatureNotFoundException6 P7 f9 O2 `. ~& j$ v" H
        at swarm.Selector.<init>(Selector.java:76), I# K, O8 y4 d
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 R* c3 T! ~- x2 q# o; e, {* ^, @
        at ActionGroupDemo.main(ActionGroupDemo.java:67)% H3 d  S& h9 U4 h. S6 n

# k: D0 |0 W; j1 N( U9 Y( [2 K% Y! V8 B/ E6 K8 ~- s) D/ ^
import swarm.objectbase.SwarmImpl;0 b1 V+ X. R; h/ ?
import swarm.objectbase.Swarm;
" E; q$ D9 H0 N  I3 @import swarm.activity.ScheduleImpl;
/ v$ z2 B# x* l; Yimport swarm.activity.Activity;6 G% ?. [( @( t( i1 D; o# X& p' q, _
import swarm.activity.ActionGroupImpl;. D4 l6 I1 w% ^; B
import swarm.collections.ListImpl;
( e6 }( Z* D! Q" D& vimport swarm.defobj.Zone; " Z" a0 I- @( m" B
import swarm.Globals;2 V: Z5 e: z7 Q- |0 x' b5 b+ d
import swarm.Selector;
8 @% C6 I+ h1 o; N" dimport swarm.activity.ActionGroup; : h) T0 T& K! o' d) N. r
class Agent {2 Q2 q: @- M( X( a$ A) T
        char id;
# I: r' y- G) R( Y" C) j! O! D2 S! `, d1 d3 ?
        Agent(char id) {
8 l0 U" g! D' C9 L8 T                this.id = id;
2 e3 H9 |3 D1 d$ b6 F/ V        }
0 d  W+ E- \3 L5 g& L, s+ M4 `& G4 R1 p" u7 L* }: s1 L
        public void agentStep() {6 t0 v( p5 C# B  x; w1 R
                System.out.println(id + ":" + Globals.env.getCurrentTime());( ?$ z5 p9 O) V* i
        }
/ n, {, T( S' z2 h6 i5 D! D4 C- B  q}
; }7 f$ X! K7 x4 ^& n6 }9 f# v- m) l6 e5 c" [. Q
public class ActionGroupDemo extends SwarmImpl {; W$ l4 ^2 `5 a3 ?# \! g2 ~5 ~
        ScheduleImpl schedule;- n/ V' h. d2 V5 q* Y
        ActionGroupImpl actionGroup;
& S3 `3 L: C+ G* o# h! R        ListImpl list;4 C8 g7 g6 |- C$ f6 f8 |* E4 W& l
        char Id = 'a';
: N& b$ x$ l. m) M0 u1 W* z/ K; z
        ActionGroupDemo(Zone aZone) {
; z3 w# ]) S* G9 Y+ T$ J                super(aZone);, S2 O) \9 B9 m/ f5 j7 Y0 h9 @
                list = new ListImpl(aZone);9 A% ?+ M! o8 b' J6 Z
                swarmSetp();6 w9 f) Y  _! w) p% i) a& E8 M
                actionGroup = new ActionGroupImpl(aZone);  O: O& l; K0 c; X2 |
                schedule = new ScheduleImpl(aZone);
* t2 L0 m2 N# M! q3 C  E                try {' a7 u* e& D; j" N8 ]
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);$ [- m. R) k# {. J
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ i/ k* X/ c5 l4 e  A' Z                        
0 W5 V* G3 `# U                        actionGroup.createActionForEach$message(list, agentSel);# \9 d3 v, @0 M1 N1 V( v
                        actionGroup.createActionTo$message(this, swarmSel);- G% L' B6 E5 }5 L6 @9 T
                        schedule.at$createAction(0, actionGroup);
" E  z$ B  Q( {7 U& q7 g5 q( |4 [                        schedule.at$createAction(1, actionGroup);
8 ^2 V* }) r8 j9 R# X                        schedule.at$createAction(2, actionGroup);
7 O5 y8 C4 @0 n7 x5 Z1 p* ]9 K* N% r5 \
2 \+ @% U0 x5 n  \. b" S8 ^                } catch (Exception e) {3 X! u) U/ L5 x4 ]$ H( g* c- M9 D
                        e.printStackTrace(System.err);+ J& X1 B8 M# K7 V+ E! |
                        //System.out.println(e);
  u/ G) o, j  b# N                        System.exit(1);/ z* r, M# C; c
                }
% r& i' S- [- L# ]$ ]
* l/ j/ e8 o$ K8 F8 W. t
7 W8 S) ~/ S# G" Q$ z        }' X. @' n& X1 O3 W! x) y

9 L, P4 ?8 f4 R5 @5 v+ i        private void swarmSetp() {
. l) u" `1 O8 x7 ^$ u" h                list.addLast(new Agent(Id));7 q1 w8 o4 s1 y' q+ i7 D+ Z
                Id++;
; C7 ~: E, D) `( E) b        }
, C0 d" j  J" I( Y4 F% N: |0 U% s. v& z. u
        public Activity activateIn(Swarm context) {& R, i2 s+ U2 P3 Q2 }
                super.activateIn(context);0 ~$ x9 P1 ~) j$ F2 b+ t4 B
                schedule.activateIn(this);7 f( Q# Z% T0 w7 P- _4 m; G' X
                return getActivity();
3 ~: A- e! M; C. @7 }        }
+ Z4 \; `: z0 x5 u* P! a0 N1 |/ r
        public static void main(String[] args) {
1 y6 b" W  {3 u1 ?1 p: k. T                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 P2 x; E/ K& W- Q
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( W7 x6 R* X. e. D
                swarms.buildObjects();
3 L; {9 D" s5 y* C" X" J  a                swarms.buildActions();
! W" C% i5 _9 Q8 V1 l                swarms.activateIn(null).run();
8 o  j: r- K# u" n+ i7 n) e0 q        }5 ^/ N$ K) g- T* e% T+ {$ y1 ^
1 _- U: S( T' g! z4 `9 Q
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-28 12:57 , Processed in 0.012579 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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