设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12779|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
  T$ U6 l: `+ ~) [. z$ [: m
2 s. r/ }) T" q2 M+ I% t: l本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, p8 \2 m3 C1 b. w5 N( Q1 c
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' R# H  D# t0 J- @4 D5 f! \  |swarm.SignatureNotFoundException4 s3 Q! d$ Y: N& h2 l& j
        at swarm.Selector.<init>(Selector.java:76)
, b0 X5 t, n* f( P$ \        at ActionGroupDemo.<init>(ActionGroupDemo.java:37); z/ C& A+ \( j2 s
        at ActionGroupDemo.main(ActionGroupDemo.java:67)) y+ z% Z  U; U% p+ C; z
4 u7 C  s( E* X( x' V/ l$ f
% y8 Q) L+ a4 M+ Z6 p1 `5 R
import swarm.objectbase.SwarmImpl;
4 Z* Y: ?/ V" Simport swarm.objectbase.Swarm;
' l! P* R, \. U! n) ?import swarm.activity.ScheduleImpl;
: D2 z/ ~; x% x$ bimport swarm.activity.Activity;& Z9 E. B/ s0 P
import swarm.activity.ActionGroupImpl;
8 i: Q0 E- @( w, s4 H; simport swarm.collections.ListImpl;
  N% n0 L, v, G- nimport swarm.defobj.Zone; * |1 q7 O/ ?9 G& ]! e
import swarm.Globals;
5 i9 j) F0 }2 ]$ m# q; T) s8 fimport swarm.Selector;0 Q% _( P6 D# h6 n
import swarm.activity.ActionGroup;
4 c+ e0 L+ ~2 Bclass Agent {/ M1 k" z0 Q3 U8 |+ H* b$ ]
        char id;/ w+ Q- e# S# _) m1 ?& O
6 @' v$ ?6 m9 k
        Agent(char id) {: z6 X3 l) X2 S- N8 [9 ~
                this.id = id;
& _6 Y" M; B0 P' `* T8 a2 p# m! z        }" u4 K. T  Y+ s5 j+ b; a

* _" L0 W8 v! ?1 A& }/ N        public void agentStep() {6 a, g/ z# e! R, ?
                System.out.println(id + ":" + Globals.env.getCurrentTime());( k* ^& p  V. q: D
        }; ?6 R3 y  V$ T2 ~% C
}
/ R) e6 F6 a, r0 f3 }- z  D- t5 U! m$ e
public class ActionGroupDemo extends SwarmImpl {3 m& r- Q2 s0 n' W6 P
        ScheduleImpl schedule;
+ r4 I. K3 {1 J        ActionGroupImpl actionGroup;
3 d" I+ j8 q4 i( T- H; Q        ListImpl list;
7 z( o5 S+ n0 p$ _; `9 X        char Id = 'a';
$ s$ B$ n# H+ t" v# ?+ Y) b2 p2 t) _' C
        ActionGroupDemo(Zone aZone) {# [: X6 ^. Q) X
                super(aZone);; i+ C$ l  C  j
                list = new ListImpl(aZone);
0 K; n  P1 B% K( c7 h                swarmSetp();
% ]* w) g2 h7 T3 k" \1 T                actionGroup = new ActionGroupImpl(aZone);
% X8 w; u, l9 Y+ A% ^& K                schedule = new ScheduleImpl(aZone);0 i& n; p8 ]* ?8 F4 O. o
                try {6 j" P$ J& w8 V+ i3 v- N
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
, x4 l) p0 W7 }                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' ]: k/ L4 r- c: j6 J                        1 P) I4 w1 `, u$ P8 L, P
                        actionGroup.createActionForEach$message(list, agentSel);
7 O6 l( V3 D! y& ~, M                        actionGroup.createActionTo$message(this, swarmSel);' B& v& C/ U) z. _3 H* v# o
                        schedule.at$createAction(0, actionGroup);& E. ^3 [9 q! a
                        schedule.at$createAction(1, actionGroup);8 f; ~6 o2 c$ F  [6 z9 P
                        schedule.at$createAction(2, actionGroup);
8 a& L# L; J( G- s, V7 m. ]' A5 w* N5 D
                } catch (Exception e) {0 i/ k3 t1 R2 E( f/ G, k
                        e.printStackTrace(System.err);5 @1 d# c1 V( c
                        //System.out.println(e);6 L' S4 ~) {/ U% g* X
                        System.exit(1);
7 [( l  O, L, L  {/ M/ o                }- b0 t" I/ _* ^5 f5 G

+ Q" U4 J: ]/ ~4 b/ S) f0 O% H3 J3 D. G5 ~5 f4 ]
        }
+ m1 p7 u1 m' a5 A# e, Y  ]- `
& N: [) b; Q7 g' R/ k+ B1 `        private void swarmSetp() {
4 ~- m" O9 i) |$ K6 }                list.addLast(new Agent(Id));1 m6 W8 @* u% A: \( e' }  K
                Id++;
2 C, Q8 R( G/ b; i8 e        }
- W+ W( q# u% @$ j% n7 |' I! w) r4 W4 Z/ X. y! t
        public Activity activateIn(Swarm context) {* w" X7 p* C/ Q1 R
                super.activateIn(context);& ?4 k3 T" S8 Q7 J$ c
                schedule.activateIn(this);
8 O$ c+ Q  |$ t2 b4 f) h                return getActivity();
' O) R& ]; {: u& b1 y0 [        }
- c+ v+ K* A0 q! Q) I  `
3 p# C7 F! {: J  [        public static void main(String[] args) {
2 W' S* I% ~+ g+ G) Y  \                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 u+ h) `3 w2 U/ {8 P, `
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, y* L% x" z: O                swarms.buildObjects();# O2 Q$ t5 \, y3 M
                swarms.buildActions();
6 u! A6 i) P) ?4 L: \                swarms.activateIn(null).run();
2 v: S# I5 a5 J# i, T6 A9 d        }
+ p7 c( q6 B2 H6 ?2 [6 L" j5 |% ?
3 S5 T9 g/ j3 B* t}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-19 12:27 , Processed in 0.017546 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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