设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12617|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : a2 z3 l; v$ [4 g0 F" j

& ]3 H& M# t* ]/ g1 T本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update212 ?3 y; ?' K2 h: H7 }
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' L/ q( V2 v0 C/ O4 xswarm.SignatureNotFoundException( n: c" p! G3 }$ n4 g
        at swarm.Selector.<init>(Selector.java:76): b3 N3 w- q: _0 M0 ~1 K
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 x9 j1 x+ J2 j* i, ^        at ActionGroupDemo.main(ActionGroupDemo.java:67)  T4 H  m* b* H, t
9 M9 w1 F$ N* H
$ J, U8 a5 R; O# t, |* F) Z& e
import swarm.objectbase.SwarmImpl;) H: q- }! ?, J8 X
import swarm.objectbase.Swarm;
  d2 B' L* E. h0 F* y. {import swarm.activity.ScheduleImpl;- Q) W9 y- a6 F" Z
import swarm.activity.Activity;
5 p6 F& F$ t: L  m3 E( Zimport swarm.activity.ActionGroupImpl;! O1 j( p8 e  d4 J* k, W
import swarm.collections.ListImpl;- G; b5 A+ T/ @( _
import swarm.defobj.Zone; * R+ T9 N  r8 u+ ]. L+ ?: W) z
import swarm.Globals;+ U6 W; P/ s' R  X
import swarm.Selector;. N+ _' y. J8 |) B
import swarm.activity.ActionGroup; 4 ^: J/ c& j* F; f
class Agent {9 D3 i& t7 Q! O7 |3 d
        char id;
  h; ^+ `2 T4 f
. ?+ C% l/ e+ Z# }  k8 y- O7 ?        Agent(char id) {9 {% q! S( X/ W8 ]" C
                this.id = id;6 p5 ^2 y* ^; c: d% K; v+ E
        }1 [) P0 J& {# d  u5 B
# C; y" |5 r% a9 c& x" E; s
        public void agentStep() {
+ p! L  O9 }( ?                System.out.println(id + ":" + Globals.env.getCurrentTime());
! I  V& f! r% w        }
9 A6 f0 T* \$ |2 @$ g1 ^}
1 V" r" S: Q5 V7 s6 r
* a5 C( O1 q/ i% i* |+ D* z; l" opublic class ActionGroupDemo extends SwarmImpl {' x2 c' s+ v9 o8 P
        ScheduleImpl schedule;% t+ g3 B  t; ]
        ActionGroupImpl actionGroup;
# M8 l1 i, d2 L3 v7 E5 L9 L+ g        ListImpl list;% ?5 s2 U8 T* B( ^6 X3 G2 B$ J5 v
        char Id = 'a';
$ }. d7 O* H5 K% E- o% C8 w+ k$ E* B! g, }
        ActionGroupDemo(Zone aZone) {1 o: `% y7 W, M: K' K8 j
                super(aZone);; j2 ~0 i! q+ \7 |6 @
                list = new ListImpl(aZone);! p4 S' R* r7 n; |2 [9 Y, ~2 r3 {/ f
                swarmSetp();* c9 t3 V$ C: g3 q% E$ T, l
                actionGroup = new ActionGroupImpl(aZone);3 W( ^# m1 c% s) P1 p0 n
                schedule = new ScheduleImpl(aZone);+ y) f3 M1 d. U' Z0 ^: m  \
                try {
6 z+ {, u3 l) o# i, J- H                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  ?2 n: j. v* |5 b7 y* I
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! _& Q" U) p; \0 N
                        & C& h# x3 F, F9 f, T: H
                        actionGroup.createActionForEach$message(list, agentSel);9 s9 t% G& N) V& A; h% A
                        actionGroup.createActionTo$message(this, swarmSel);
$ i: h$ h/ }$ n" a                        schedule.at$createAction(0, actionGroup);: L' c1 W* M3 `, r( n& G5 h
                        schedule.at$createAction(1, actionGroup);/ f5 }1 e  x! b1 S
                        schedule.at$createAction(2, actionGroup);
& j1 Q. p, |6 d9 ]/ g) g* C" V4 b
                } catch (Exception e) {0 i+ d3 E5 s: ~% Y3 O! [
                        e.printStackTrace(System.err);- }" l" A: y% W) X% I
                        //System.out.println(e);0 M* S1 \/ |3 D1 `
                        System.exit(1);0 p; R/ L) @( C4 q. U
                }
- m* k& l  B# Z; J: l
/ n1 ?% G" I4 S0 N: t+ ?4 C& I' }9 V% o6 L
        }
3 F2 W5 j* U- [$ M- w' u6 M5 M5 I/ t0 N
0 i* x- q2 k& ^        private void swarmSetp() {. S) U. W& H( k" R) \
                list.addLast(new Agent(Id));
" C" r% g+ M0 X! w" F" r                Id++;
' O# k" `* i/ |  k2 a% k* f        }
( M! x6 A+ C1 V
7 \! s2 P  g& `7 E        public Activity activateIn(Swarm context) {
- r  r: w% R* T) o                super.activateIn(context);7 c# g: Z& ^6 O: z' d  D( e
                schedule.activateIn(this);
. G7 N5 U, }* ]. Z* U" L4 I/ g                return getActivity();. W2 a  F+ P+ ^
        }5 E: u  F# ^0 r; V
7 Y7 O( `1 d! G
        public static void main(String[] args) {
4 c6 r6 ~( F( g9 t                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. l; B; Q6 l1 d$ t                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ ~* z6 w, u  o6 p0 L& y                swarms.buildObjects();
& I& l0 }: z- r' A4 y1 W: v" v                swarms.buildActions();& W. k8 b! b! c# y) j1 d- R
                swarms.activateIn(null).run();
6 D; [% E! m& k  u, B# v1 w        }
! q' d; K, H+ b$ V. f
' ~: K$ S. Z8 [0 K) I+ g$ r}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-13 21:37 , Processed in 0.014942 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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