设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8393|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 o1 S, R0 ^6 S  m  ~7 l
0 \& \7 J& V- q# l: X3 t7 V5 l
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& B' t* w7 m+ X- L以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 x7 A7 r: t- Y+ Y  W) ]+ @" Mswarm.SignatureNotFoundException9 |2 b9 ?6 z- n$ _: ^% n
        at swarm.Selector.<init>(Selector.java:76)
' s! G, X- c5 ]9 h" F        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 g6 X& Z3 @( X9 x7 S
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 P& x+ _# t: g# y: \2 H1 z# l" |- h2 P! O
# }3 `4 `1 q6 M9 k& C
import swarm.objectbase.SwarmImpl;
8 Q1 c+ A& Q# f: Uimport swarm.objectbase.Swarm;
4 t' q- L7 i  O$ _, }: ?/ A) Ximport swarm.activity.ScheduleImpl;/ d+ t. ?+ M2 X
import swarm.activity.Activity;1 [, {' r- B! L( Z' A/ c
import swarm.activity.ActionGroupImpl;' q# S1 V$ d8 B7 F+ y/ M
import swarm.collections.ListImpl;+ B( h* @: [& ^3 r0 i3 L
import swarm.defobj.Zone; 6 o! F/ p1 `& L! l  u
import swarm.Globals;1 D! x$ C+ v. [# F+ X0 k8 A# q
import swarm.Selector;
. L0 [. P  q% Q/ Cimport swarm.activity.ActionGroup;
* K( V; a. l/ Kclass Agent {
# \% o# G" p- N        char id;
1 m7 q7 t' i9 Q, M1 |% O. t; b( |" j7 N
        Agent(char id) {
; f1 J7 V+ h+ J- T                this.id = id;& |3 j: n& m, ^, e2 r' ^4 I
        }
! c2 o  K% M/ o" k8 ?
) O- P( I4 G8 P5 |( g* T, b3 W        public void agentStep() {
6 W- j+ S  y1 M# `                System.out.println(id + ":" + Globals.env.getCurrentTime());
( ]4 s! ?) c! q9 P2 T3 M        }
" I6 y1 b- d$ H# I}
* c) w1 h3 e; F6 Z2 ]+ i  Z& Q  D1 g, _* E% R' x- ~
public class ActionGroupDemo extends SwarmImpl {3 J; b. z& v, k/ P: X
        ScheduleImpl schedule;
0 V% E- ~% K0 M, n( `9 E+ c: o        ActionGroupImpl actionGroup;4 f: q' H6 @7 D+ W3 e
        ListImpl list;! e9 j' b7 S* h8 e% ]# J% W
        char Id = 'a';
3 J8 S. q0 o6 `8 K* I$ O4 d! v0 C; l* t; y0 C$ L$ H0 |5 R; S
        ActionGroupDemo(Zone aZone) {
6 j$ @* n5 H3 B: k8 E' @6 s                super(aZone);$ {, p& L/ `" U/ z( f" V+ O# w# Q
                list = new ListImpl(aZone);$ |# G2 _# }, V. `! l9 R3 w8 I
                swarmSetp();
7 _  I$ {/ Y: C, h* k                actionGroup = new ActionGroupImpl(aZone);( B/ ?. z3 C& t6 G2 }5 N' j
                schedule = new ScheduleImpl(aZone);9 e: V; q( @; E" P2 L
                try {% \9 ]$ _, c+ F8 W6 _( V( y
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);* Y! M  d8 ~+ l7 t
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, Y$ B  u: t2 _, j0 I2 B
                        6 U8 S! T1 K7 t  a6 X6 _" j7 F, w3 U
                        actionGroup.createActionForEach$message(list, agentSel);8 v" W6 b% V  n' @# J
                        actionGroup.createActionTo$message(this, swarmSel);' _9 Q9 J. {0 b$ q
                        schedule.at$createAction(0, actionGroup);
1 K8 n6 d* c& U                        schedule.at$createAction(1, actionGroup);9 D+ N8 y. X9 V" ]
                        schedule.at$createAction(2, actionGroup);
( Z* X1 ?7 i5 a* |/ `6 i- N- L: H) B8 J/ e7 M
                } catch (Exception e) {
2 Q5 J# \. Z; c4 V/ i                        e.printStackTrace(System.err);
0 X. B" R+ k  T) i/ J                        //System.out.println(e);
( ~. X$ D0 @) z3 h! i4 |                        System.exit(1);
# W; O' v, v: ^+ ?, ?& R0 c: N                }
% ~1 \% H/ x  G. Z; W# y1 M4 s
/ _. ^, W6 P, t! [3 i! o: v; ^' t" \5 z; I4 V. B1 h: Y0 Q
        }5 n, @* \- H: Q1 k+ A
4 v3 l. H; _/ R
        private void swarmSetp() {2 Y9 h& N; y5 x% T
                list.addLast(new Agent(Id));& M2 F7 Q, G2 `, B0 `
                Id++;% [0 X6 }$ ^/ t
        }% k5 u( B8 q8 I- k* O/ n

( t' C, l7 w$ x  ?8 R        public Activity activateIn(Swarm context) {
$ w2 V1 _  G' `# ?2 H" i3 l0 l                super.activateIn(context);
8 r; L+ H) C/ {% Z                schedule.activateIn(this);0 n! f5 w. r6 R  c( P- H, u: ^! n
                return getActivity();: I+ E; V  m, V+ h" f- z8 d
        }" e8 ~" M* r" u5 H! A

- x) d/ T5 q9 S+ |. f% ?7 |* U7 E6 V        public static void main(String[] args) {
& T( E  o  N/ D- h0 l9 k4 V                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 h9 B- S2 Y9 a  |                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ S/ _# v  C! C3 ?( r
                swarms.buildObjects();
( E6 `7 v: ?+ s# |2 e  _# E4 k                swarms.buildActions();
; }$ m! r  ~) V8 N                swarms.activateIn(null).run();
( v: G' n& q' E' A; K# S+ i( d. [        }0 z  S, E: p) S" B) v' U) Z

2 `" j. ~& N% f* e, P}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-10 21:05 , Processed in 0.018168 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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