设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9076|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 X/ l; ]6 a, J8 f0 @2 u& n# Q6 s3 S& A0 Q3 e
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# U  N  l' o: r4 n. i$ U以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
& J% y: W0 z8 V0 S1 B3 \$ Vswarm.SignatureNotFoundException. ^. k2 N3 n! J0 `- C
        at swarm.Selector.<init>(Selector.java:76): \) e" J  y, [7 A. \, E
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# a+ C' ^% D+ S, U: a) e        at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ f! B; D! }6 a' v5 E* L* w
" Y! K$ f) K& l, [# {; ]" T1 p8 n* e6 c5 Q6 w" R% t( r" F4 d
import swarm.objectbase.SwarmImpl;
) D; p1 q/ I" Z+ k/ timport swarm.objectbase.Swarm;
6 e+ W! ]& v8 ?3 l6 k8 ]import swarm.activity.ScheduleImpl;5 I$ [( H# @+ R0 g" f! R
import swarm.activity.Activity;
! `3 W) ?8 @, e4 T' Uimport swarm.activity.ActionGroupImpl;
& q7 T* I) Q. Mimport swarm.collections.ListImpl;
+ a8 r+ i* e5 o3 T5 t9 bimport swarm.defobj.Zone;
7 A, [6 l! g! i7 Pimport swarm.Globals;; q1 j6 L6 L- q0 @
import swarm.Selector;: V& u8 D' x" L$ c, M
import swarm.activity.ActionGroup;
0 N+ a& \& U8 yclass Agent {
+ e: B; p- ?$ k; z9 H' }4 j4 R        char id;4 a' @0 Y) Z9 N. |

  t9 M2 g! c2 y! X1 f' m$ i        Agent(char id) {' N; U; Q. g% ~5 l0 Q5 j
                this.id = id;
& T/ A3 W  y: F! J* j) N        }6 n9 t3 s0 C- a5 d

' J( c- {/ T% I& j        public void agentStep() {
2 u3 l1 U/ B" m7 W6 h                System.out.println(id + ":" + Globals.env.getCurrentTime());
$ ?& r4 Q& z# d0 z- J4 t: D        }* j8 v# e1 a3 P( z( q
}
+ z6 J* X2 I8 C8 e/ A" M. n0 y% B0 h9 I: S) i7 _- n
public class ActionGroupDemo extends SwarmImpl {
, E8 R3 I. n$ ?2 m: ?5 I        ScheduleImpl schedule;
: l0 @! b- C& Y; E        ActionGroupImpl actionGroup;
  y7 S2 K2 K/ {& A5 x        ListImpl list;& v( K7 `0 ?, h8 q: z. r
        char Id = 'a';9 z. G5 u* B  r% d  b. ~, a8 C

$ y7 S% Y3 g2 g0 f. c        ActionGroupDemo(Zone aZone) {
* X, Z& e) H4 x                super(aZone);0 k+ Z; I& a* Y  ^$ k/ E! f$ F4 d9 a
                list = new ListImpl(aZone);
, l2 S. x" {+ J                swarmSetp();1 ?6 A6 _4 K7 ?" Z: t( _
                actionGroup = new ActionGroupImpl(aZone);
2 }: Z8 _/ w) f# G) ~  s/ U, K                schedule = new ScheduleImpl(aZone);% r, f% D0 A( E2 ~) c4 C$ i2 `: z
                try {
8 ?8 D8 ]5 Z3 q! e                        Selector agentSel = new Selector(Agent.class, "agentStep", false);# w4 m5 j+ x, J' @& w5 ]
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# E6 C6 N- Q, j$ A& V! b7 W                        . j  n" o" G+ e( U$ }; l9 S
                        actionGroup.createActionForEach$message(list, agentSel);4 c# ~# H3 L- |: |1 X4 l
                        actionGroup.createActionTo$message(this, swarmSel);" a8 k8 z0 T) f6 S: H6 S& K" T- w
                        schedule.at$createAction(0, actionGroup);
( Y7 n$ e+ s% U* L                        schedule.at$createAction(1, actionGroup);  h7 k$ l  S  L  e0 Q
                        schedule.at$createAction(2, actionGroup);& O/ s6 @0 M4 ^- ~, V) D
* Y, `+ z+ E  j6 f, I/ S0 ^
                } catch (Exception e) {# s; m. _- d- B( ]7 x6 f
                        e.printStackTrace(System.err);- o1 u- c$ L1 Q& O) Q
                        //System.out.println(e);2 I' e  J3 |; {# u  B# k* t
                        System.exit(1);
3 ^: z$ c7 P5 a3 ?& U) W                }5 q4 |- H0 E: |

; b! f( G, ?# n
+ @* H% ~! l7 p# q' @4 c6 M        }
6 F1 k/ q: E/ T: P" l% ~+ y1 @1 `
+ F' p& \2 y9 N+ ~* w4 Q' A1 E        private void swarmSetp() {
2 z% ]) M* n/ ?) a- L4 R, y1 V                list.addLast(new Agent(Id));
0 A) D; U/ [% t( ]                Id++;$ D+ T1 F% P4 k& B1 {2 Z
        }
: \: m8 M0 Q3 o: ^$ ^, i/ h& }  `9 S. r# ^! b1 ^( g. O' A
        public Activity activateIn(Swarm context) {$ A# S. w* N( T: }3 F
                super.activateIn(context);. W* A6 G- A3 w& z
                schedule.activateIn(this);
& V+ S; q, H. S: _" k2 D1 t                return getActivity();
- j9 }7 V% j3 h6 `" S) a: P. I        }+ n, S* c% m9 t" O! {4 f& S+ y# q

0 J% O0 j) f8 s8 H        public static void main(String[] args) {
8 t# I, v8 _7 Y% A& J                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 l, S5 [% z3 _                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 N* m! G' \- f& _                swarms.buildObjects();
( b, R+ I1 B0 c8 Q$ j3 r                swarms.buildActions();
- M! U/ U2 V2 m8 s                swarms.activateIn(null).run();: g, c/ `1 t: ^' W  }
        }( M5 q6 A2 l6 H1 ?' }2 U6 t% G
$ @! ]5 Y7 ?9 H/ T
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-30 19:46 , Processed in 0.017783 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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