设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11942|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & R$ ?+ ?! Y4 k
- Q! l7 O; [, n- G5 `' v' h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ P. S) \! h+ ~+ z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 {1 z% z# i7 [' k6 H
swarm.SignatureNotFoundException
8 m( A- A2 b' b4 ~! Y( ^3 w        at swarm.Selector.<init>(Selector.java:76)- h) V, x) S+ J& u: E8 \
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& D+ j) f: @, V6 b9 i( H. t% t
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ M4 s% L$ z0 ~. x' u# s' p
- c- K$ c6 _4 v6 U6 @7 Y5 {" t) f
; c; Q! I: i- E$ aimport swarm.objectbase.SwarmImpl;6 S! f. `7 p1 e9 A0 g. F/ e3 x
import swarm.objectbase.Swarm;9 G5 w3 U  R* A0 d
import swarm.activity.ScheduleImpl;+ c0 u0 G$ i) F) f! |
import swarm.activity.Activity;6 R9 _5 t) Y+ a( x* Y6 c5 X( R
import swarm.activity.ActionGroupImpl;# i6 s; A/ B6 H5 T
import swarm.collections.ListImpl;# E0 M8 r9 x& V0 l' w9 G- P; M
import swarm.defobj.Zone;
1 Q2 A1 J& n9 ]9 ]% yimport swarm.Globals;
" W% W( j% X* H. i7 aimport swarm.Selector;
- n1 S- H* C( `6 i+ W' ?( w0 [import swarm.activity.ActionGroup;
+ a/ H: _1 K0 I& Nclass Agent {. V; k  V& r- V1 v
        char id;' p; [1 L3 b- j8 Y3 Y4 e+ W' C$ i1 ]

' i/ b. P+ f. k4 a        Agent(char id) {' L  h$ l+ E7 `- _- t/ e
                this.id = id;* Z) Q. p9 v1 _8 R, @# {$ h) F
        }
1 j% e- X# g3 y8 {7 y* k/ M7 n) H, T4 B4 c4 x; ~
        public void agentStep() {, ]5 s" E" f1 i! k+ m
                System.out.println(id + ":" + Globals.env.getCurrentTime());
/ O6 e: S& U2 [+ |2 L  ]& g8 r        }0 w) ]1 K7 I$ r. E7 P
}
3 w3 }9 u3 Z+ s2 S1 z# N8 \  R+ U( J! \: y; k
public class ActionGroupDemo extends SwarmImpl {
4 q# M# ?5 s) l! A: b7 V. f        ScheduleImpl schedule;4 q9 e# Q" [9 o) O
        ActionGroupImpl actionGroup;
3 N" x" b5 ]: {3 m% L        ListImpl list;
$ Q% Y; v/ @2 ]' p- Y8 {. @6 h        char Id = 'a';" W# ]" v7 {5 @& J. L$ @( T
; g3 K5 T1 Y7 D, h
        ActionGroupDemo(Zone aZone) {( V: `! L* H9 K# N
                super(aZone);
5 Z' _4 ^9 L  a! q# x                list = new ListImpl(aZone);" n$ M6 C: W% a2 l4 `) \
                swarmSetp();: @) F: [! m4 z2 U, Z
                actionGroup = new ActionGroupImpl(aZone);
1 q4 A3 K3 j, I0 L$ B5 `" x5 K                schedule = new ScheduleImpl(aZone);
3 P# v8 v1 N- z: G                try {* \9 d1 J4 y! K1 N/ ?0 i
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 F* s6 o# _0 ~* a8 {* N* y* s4 Z5 x6 o                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# E0 O; ~. \+ o' O* G+ F                        7 S8 c3 n+ m* A
                        actionGroup.createActionForEach$message(list, agentSel);; y* f5 L/ P) i6 }5 D
                        actionGroup.createActionTo$message(this, swarmSel);. z! ^! r- ]; d6 j! R
                        schedule.at$createAction(0, actionGroup);
% z9 h+ F: g- f6 V" o+ @' f# _                        schedule.at$createAction(1, actionGroup);
5 Q5 E  M$ c2 c: l3 P5 m& U                        schedule.at$createAction(2, actionGroup);5 ]3 U2 E. E  }9 b1 \4 A( T7 l
8 x$ K9 @$ P7 l8 p! f
                } catch (Exception e) {' u5 F$ U5 r& |: d% v% o6 m
                        e.printStackTrace(System.err);
2 E  Z! O& R9 z- A                        //System.out.println(e);
) A0 K0 D1 D( e1 }0 j                        System.exit(1);
5 i9 k+ |+ i2 B% _  F" x                }' q3 M; g9 e1 ^) W9 B

$ V4 g9 O2 t2 J. M% d3 g3 C
0 A  i/ e% Y( R4 u  n        }, z7 |/ Z  k4 {0 G% g

% P6 H7 o/ o. U% P        private void swarmSetp() {
3 h( u% h. j4 M5 O- b7 b+ k! z                list.addLast(new Agent(Id));
! B1 I, G- l# K, e) k6 o6 X2 W                Id++;( g* x: c7 V& `* S+ K! Z
        }
3 [& a" o; j8 u" g, j/ m2 v0 o8 G' R3 U7 T* u7 p9 M
        public Activity activateIn(Swarm context) {
# p5 [1 |/ Y7 \$ T5 `8 i                super.activateIn(context);5 M- p0 y( u% |  a% p$ p0 @) L9 Q
                schedule.activateIn(this);* P. I9 ~) Q7 |
                return getActivity();$ E0 T3 n7 ?% _! n* J8 t
        }
' q( X2 Z+ [1 W0 m) ?. Z' b/ K
/ F! A% e) K! k        public static void main(String[] args) {
+ N. i# Z  Q$ o2 X8 O6 c                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( g1 d, w( O- {1 ^+ p                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 K' Z, S* q' ~+ C9 X* j! ^
                swarms.buildObjects();8 Q# `; t: b, o  e
                swarms.buildActions();
+ x* N* t! ]. h) @1 x/ d                swarms.activateIn(null).run();; f' Z/ K1 u+ t+ `9 q
        }
- @* \* Z' Y5 V% |
; E$ M: J0 O$ u, t* r" e}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-26 06:16 , Processed in 0.015952 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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