设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6314|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 G$ W& t+ V5 @2 @( R" r/ T& k* ]" M- }( r6 X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 ^# t2 ]; A& T% J/ x
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 K+ f0 _8 }# u1 L9 [2 l
swarm.SignatureNotFoundException
+ y1 G' U7 n) g& @        at swarm.Selector.<init>(Selector.java:76)
# _7 t- h! O) ^        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 z- `: d5 r8 J
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ F5 e' H4 {2 d! a1 V* S9 X$ P% {" Q  I0 N: K1 g! F3 n

' M! ?1 G3 t. p  D2 r& limport swarm.objectbase.SwarmImpl;$ H/ \) T, K$ I/ F
import swarm.objectbase.Swarm;$ U5 z  r) k: l4 Y4 U% T
import swarm.activity.ScheduleImpl;+ X' E+ a- O" T* F
import swarm.activity.Activity;$ G1 }9 E: q+ H" J1 d5 N& W
import swarm.activity.ActionGroupImpl;% N+ V% O+ V6 V) u& H% A
import swarm.collections.ListImpl;4 n& h- Q& \% H/ C$ a
import swarm.defobj.Zone;
& V) c$ J' `! Simport swarm.Globals;, f5 o& O( P2 E  K& b+ e
import swarm.Selector;
4 j+ i8 T4 ^" V. bimport swarm.activity.ActionGroup; " w' z8 [7 D0 z2 x# K4 x! t: n
class Agent {
5 c, Y. i8 O1 {( |  N        char id;# Q$ ~4 L. m# D/ [0 s; f

8 A8 k* Q0 a; h+ ~' B8 z        Agent(char id) {& e; _) {: R# f
                this.id = id;
1 T2 ^7 c4 G9 F5 _$ s4 _        }: N) C7 s2 W) e2 u& \
( B& D1 [* V8 ~* p0 X/ v2 D
        public void agentStep() {, X9 c* }. ^; A; n$ Q
                System.out.println(id + ":" + Globals.env.getCurrentTime());
, \: c; q/ e- I1 b9 ~% Q& `        }8 x1 m7 W. \) a
}
4 R& b# I; V! R- b3 n; e9 h, s, L9 B7 ^' u. B2 ~
public class ActionGroupDemo extends SwarmImpl {: {3 P# ]; c4 ]% m6 ]
        ScheduleImpl schedule;$ i& \3 E6 w8 R
        ActionGroupImpl actionGroup;- a4 m1 [6 w% Z5 }9 s/ C- w
        ListImpl list;0 n, D6 e0 z" g4 ]3 Q* E" j" N
        char Id = 'a';
% d6 X5 k8 I% v6 H- L# W$ [
& s' G7 [2 p) s9 D: Y9 R3 E# Y0 t" l        ActionGroupDemo(Zone aZone) {
$ C. @- ~) _, d: \5 V' I                super(aZone);
5 C- M! I. ?) m$ I" T: [/ R                list = new ListImpl(aZone);; k/ o0 D& j+ n: o- p
                swarmSetp();- r& B/ N' v2 o" K0 g! y
                actionGroup = new ActionGroupImpl(aZone);
1 c: W4 c3 u% }3 y/ u; |% V, H! D                schedule = new ScheduleImpl(aZone);
/ c' O. \) A, y* d5 V0 @- R- r                try {
: p) J# P9 D/ f1 r                        Selector agentSel = new Selector(Agent.class, "agentStep", false);4 g+ J& ?; l0 C; J1 D" _- e
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% @* Z+ Y- F3 G. s0 S
                        2 t3 ?2 G: |/ l
                        actionGroup.createActionForEach$message(list, agentSel);
4 K, m8 p* U0 v& O7 u. ?                        actionGroup.createActionTo$message(this, swarmSel);+ r* ]! Z1 K  A0 {
                        schedule.at$createAction(0, actionGroup);
4 c' q  i) b% ~' V% z                        schedule.at$createAction(1, actionGroup);' r7 q5 [1 r7 E. S6 A6 ^, i5 \
                        schedule.at$createAction(2, actionGroup);
+ a4 Z1 u- G  `1 l% }( H- o' G3 C; }1 ~  L8 }0 N# h
                } catch (Exception e) {
/ f0 }" s' g/ n- u                        e.printStackTrace(System.err);
  d, y" ]3 q* d1 X6 o9 N, A5 l# s                        //System.out.println(e);
! D" b: _- a4 ], f) J                        System.exit(1);
9 Y' g/ c8 F# @! K; }6 A- i                }
2 _% {# I2 G  K* r% A: {
: ~) @. X( S5 z5 d, W. y1 `  ]" h8 a( h. T
        }+ [) C$ ^" I  o! W
& M2 s  h& {- r" i
        private void swarmSetp() {
3 Y) J7 G+ b7 D( V, T: ^                list.addLast(new Agent(Id));7 x% J' z( C/ C
                Id++;' R9 ~8 R: G5 }7 y- ^! t# c4 d+ S
        }
1 `3 a2 ?$ r" M! v/ R" p# D9 q; J) T5 n1 W% {3 i  x# v
        public Activity activateIn(Swarm context) {
3 u* s$ C  o1 A- i                super.activateIn(context);& z1 L# ]7 I; q9 Z3 _5 X
                schedule.activateIn(this);
9 Z' X1 A' N8 Q& ^                return getActivity();5 u2 P# k+ q. z& ?) d
        }
8 f. b: @4 T/ r7 q9 Z, t  N# `2 P6 b4 `5 i  Z' z9 D
        public static void main(String[] args) {
0 m& i  I3 z$ y+ V1 R                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);6 G* E9 ]( X1 u8 E" a# z% |# M
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# O' D6 l( E5 L                swarms.buildObjects();
& o+ R3 ~: W4 y( g" \" D' t                swarms.buildActions();* v3 s  I8 |3 Q. v
                swarms.activateIn(null).run();
4 o8 `9 O+ n: ]        }: o) }3 m7 C; a; i
& y' J# a' @: _+ v$ X$ F% l, n; W
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-24 23:58 , Processed in 0.022462 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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