设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8212|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, l% F& x4 p. }7 ]" [0 d0 U  `  {5 J7 e+ P6 ^! S# W
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" H+ {, a5 p! M5 D( }
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# L; w8 n" E# X- S+ cswarm.SignatureNotFoundException
! G/ I* w3 c! Q, w        at swarm.Selector.<init>(Selector.java:76)6 G0 L4 B/ L+ t2 h* T1 E9 A. q
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37). s  |5 ~% e. i4 m1 X* ~: e
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
" R4 E" P4 s9 _6 i6 T
( f" Q+ l$ a/ l6 ]& `5 x, c/ p, g# k0 {  J, Z( M7 T
import swarm.objectbase.SwarmImpl;
0 @) Z+ _' C9 _. Z$ g8 `* e& Gimport swarm.objectbase.Swarm;) W' b& b# A/ t9 e; Y; U
import swarm.activity.ScheduleImpl;
. g& P' k6 L+ M1 F+ _6 simport swarm.activity.Activity;3 J9 S. h2 ?# Y9 |2 z
import swarm.activity.ActionGroupImpl;
2 B# w+ ~4 K) s5 r' Iimport swarm.collections.ListImpl;, B0 F4 m/ m" g1 ^- l& P
import swarm.defobj.Zone; % B& ^" f" z$ K. H
import swarm.Globals;
3 V0 i: B0 M2 yimport swarm.Selector;) D' R( B; e! D& p
import swarm.activity.ActionGroup; 6 w! w+ a. b) m% J
class Agent {
) F- T% z, I2 E% ^( L        char id;2 k4 ]+ B+ v0 u: V7 D6 Q
/ V/ i5 d7 ^4 P( w
        Agent(char id) {; S5 K" v2 ]9 y3 X5 d2 B3 W5 s
                this.id = id;* \! D  }# \: ^2 ?" }
        }( J5 T$ O9 x( q; c7 I

0 [/ |6 x7 e% e! j2 d2 [. Q) Y        public void agentStep() {
1 c& g' w1 v+ W3 u- U" A% M* H& ^                System.out.println(id + ":" + Globals.env.getCurrentTime());/ t' ^) y$ G% y
        }
# K' q$ ?) z# b$ h. o' q( M9 \6 ]' i}' S$ c. N5 x9 t- O

" I/ O3 I2 `7 g, L1 Wpublic class ActionGroupDemo extends SwarmImpl {! o" l5 `- A7 H
        ScheduleImpl schedule;
1 z. }" ^4 t, @9 k        ActionGroupImpl actionGroup;5 G- f  K' c! I) f3 P/ q* G
        ListImpl list;
2 ^% A6 e" O" R2 z        char Id = 'a';
4 x# f+ a- L  [
# n: M, _& `0 N" A* x        ActionGroupDemo(Zone aZone) {! c6 T! \5 Y& ?  Y* h6 C; K, x
                super(aZone);
3 Z$ c2 H1 l, f" y7 ^3 j                list = new ListImpl(aZone);+ [9 M# p( Z/ g- {: B
                swarmSetp();& Y& E' ]6 C2 h6 G8 G) t5 D* Q6 U
                actionGroup = new ActionGroupImpl(aZone);/ g; `  C1 p. R6 ^
                schedule = new ScheduleImpl(aZone);
* I  Z, H' E; M- p# E  f# m- [; N                try {% p3 \: f) x1 P* N
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);" P! d% |8 M6 e7 t2 B+ J
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ D6 v7 h" V5 A, O* Z0 X$ @
                        
; e  k+ F! l# l; g+ O                        actionGroup.createActionForEach$message(list, agentSel);! S7 Q+ N9 x% J2 p  _
                        actionGroup.createActionTo$message(this, swarmSel);
, o0 I7 k* F" }# U                        schedule.at$createAction(0, actionGroup);
9 S, ]4 E* C  M# N                        schedule.at$createAction(1, actionGroup);
$ U# @  p+ p! E5 C) C                        schedule.at$createAction(2, actionGroup);
: s6 B, ~# l  ?, \- \
6 G8 h$ K5 s$ z' m) Z                } catch (Exception e) {% a4 B* @; q; i; k  l% U
                        e.printStackTrace(System.err);/ c3 W+ O0 D% @# m( g; h8 D7 m, S4 K4 Q$ Z
                        //System.out.println(e);& ]4 o: t! V& Y% M* s7 {/ t; w2 B
                        System.exit(1);* \1 j+ s. ^" t6 Y
                }
$ Q, X4 s3 n$ N# a1 s) J! W; s6 r5 `% I# V- I; H% B

7 [9 c8 ~- g+ ]2 x0 c: k) X9 ]        }$ Y1 h6 {" }1 h8 d
3 g* y. }6 n  f* x$ Q  I- m
        private void swarmSetp() {/ s% {4 Q" k8 G7 h/ N7 D* ?& B
                list.addLast(new Agent(Id));
: R9 I  q" L; J4 h4 Q% K                Id++;5 F% Q, }3 n+ M& {  E$ Y& Y( A
        }
) _6 ?3 o: f& @' E. ~/ B  c$ x
+ }1 B8 h; [6 _8 Z( U        public Activity activateIn(Swarm context) {
" L7 f8 s9 _2 `1 Y2 [                super.activateIn(context);, v! }" B* \; v3 v) M
                schedule.activateIn(this);
) B  l! u# S' N1 ~8 k: z4 y9 G                return getActivity();7 a7 X( l  a2 H
        }( d! }0 X5 F, V8 q

' \- ~  N  m# D9 z9 O8 n& ^% w        public static void main(String[] args) {9 O! W6 D0 U3 b: ?7 {
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ v% W+ p' c% A1 l' ]7 ]                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' i& P  R* A$ L, n1 F  n
                swarms.buildObjects();4 S3 [8 H# j3 t, m3 S' h
                swarms.buildActions();
# D5 e; P! n) ^. e2 I* j& d* p8 p                swarms.activateIn(null).run();$ Q3 i' L8 M9 I
        }
; @* m2 D! k8 P
3 w! T* s  y' @* j. y! t}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-3 09:46 , Processed in 0.016289 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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