设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12221|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 z0 I; c: \( L+ u/ K- y. B5 \. b7 z3 p
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 j& L0 c1 u! n4 j; m以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." T2 e) \# X5 _; @# b
swarm.SignatureNotFoundException
' v& x. d! z2 \7 E9 ^& V        at swarm.Selector.<init>(Selector.java:76)2 B8 m7 N. ]% c% K
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# @$ h" F- B* ~4 u% \
        at ActionGroupDemo.main(ActionGroupDemo.java:67)' R3 I  |% {( z! Z- b. `

# {$ _6 d7 x, X8 L0 _( r% \! J/ v8 t0 _( T" A/ h( b
import swarm.objectbase.SwarmImpl;  i& {4 B" S3 I" t, c
import swarm.objectbase.Swarm;) o$ X- Y: c# h* X; \
import swarm.activity.ScheduleImpl;. G: `$ T9 j0 R- d8 @: o; L5 {3 j
import swarm.activity.Activity;; K. ^3 l" d# e2 ~
import swarm.activity.ActionGroupImpl;. x( M4 J; m$ O6 I9 V
import swarm.collections.ListImpl;
; L; b3 a& f* ?* ]( himport swarm.defobj.Zone; $ N0 S( _5 r# }( m6 n  m# m$ R
import swarm.Globals;9 O6 I" j0 w0 s2 j( `: U
import swarm.Selector;; y% F+ R: v0 J
import swarm.activity.ActionGroup;
& J# O& N8 d! l) a  u) iclass Agent {
2 |1 |* l. |; r6 p  l" q        char id;
& Q% s* q4 S2 @0 p2 I) t, Q# N, L$ Q$ X, l
        Agent(char id) {3 I+ ^& M; i' _% ]
                this.id = id;
( m" w8 Z( ~. ^) n% c3 S        }
' v: r4 q5 L2 l% f0 r1 l" j: @; W& u5 V1 B- q' \8 ?0 {
        public void agentStep() {
+ `' n) y, o* ~  p$ B. H                System.out.println(id + ":" + Globals.env.getCurrentTime());
/ i: a" P7 \; a4 t. J2 d        }
7 f1 {6 b" z% N, r/ o}/ }+ ?  P+ }0 C9 l8 `8 k0 H

% i$ T% O+ P- |$ c/ V+ E) \public class ActionGroupDemo extends SwarmImpl {; r" t! F6 |$ p5 _" I
        ScheduleImpl schedule;
( x- j& J- V3 i* N' e  \! |* ]        ActionGroupImpl actionGroup;
/ y+ B, D) _0 F0 b( l1 C8 c        ListImpl list;0 |1 O/ M& Q3 i4 s1 Y. R
        char Id = 'a';, s% B" @+ O# m: `+ Z5 ^+ v* r

# g  C% Y+ J3 W) o5 f; j        ActionGroupDemo(Zone aZone) {
7 h4 x( L4 _* Q6 Z                super(aZone);
! V0 V! e0 w" p- a* o                list = new ListImpl(aZone);
5 l2 S7 N5 Q- x8 l+ R- Q                swarmSetp();& ]' _! `) ?' l: C- J9 }" X" F
                actionGroup = new ActionGroupImpl(aZone);2 b0 f4 Q5 u; g7 E- c( [0 q. \9 v
                schedule = new ScheduleImpl(aZone);! K  h1 @; O$ K: @7 a# x
                try {
/ M3 R. n% `# T                        Selector agentSel = new Selector(Agent.class, "agentStep", false);( Q# N1 h+ {1 F2 e4 r1 r- i
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# [$ T$ \' G$ h' m' ?  @                        6 C3 B) q" g; A9 a
                        actionGroup.createActionForEach$message(list, agentSel);$ Y# z4 d' K" E' @4 r. V) u4 m
                        actionGroup.createActionTo$message(this, swarmSel);+ B& ?% T5 S5 g) x( E0 Z, L3 r, K, E
                        schedule.at$createAction(0, actionGroup);8 g8 h# `2 k% j8 d! h" {
                        schedule.at$createAction(1, actionGroup);
0 m6 k. K+ N5 G, j$ a3 y: o5 ?                        schedule.at$createAction(2, actionGroup);
; N( y. y. @2 x8 u, @$ p( w8 D0 ~  U) N+ b6 a( O
                } catch (Exception e) {3 r' V% h9 s7 T2 d( O  _
                        e.printStackTrace(System.err);# w7 s- B0 z4 f
                        //System.out.println(e);
9 s! x) i& s' G7 M8 z4 o) t                        System.exit(1);' ~/ y- F8 P$ ?( L" X$ z
                }
, ^! ~. N* H) \9 L5 u
& `9 X) \8 d2 @4 f0 n
9 `2 G" E/ j$ ]+ Q        }
- r  v, B- |7 L' W4 s! `
+ l' f/ T' a% m7 E% `$ t        private void swarmSetp() {; w7 \4 _9 [7 h1 Z* Y( {1 D
                list.addLast(new Agent(Id));( K( A  N; z! s9 `
                Id++;
% ^4 q, d2 e1 t% m/ v        }
/ D1 \! Q! i* n! G1 q: F  ]% R) K2 @& y1 }9 p
        public Activity activateIn(Swarm context) {) a# s* ]0 y! q6 f" \
                super.activateIn(context);1 m$ l+ o; ~5 Q- G- F/ p# g5 f
                schedule.activateIn(this);8 k) Z) f7 p" Y* B+ W0 u0 t
                return getActivity();( V6 h7 @8 x0 F# ~; i: P% m
        }
8 ]; n1 w0 F/ j6 a1 d. _: a4 D0 a4 e9 s- U' N# r: R9 L9 c
        public static void main(String[] args) {4 j7 t; v2 {9 D% f7 A
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' E) @  G: |$ X. w7 v                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, I' e+ T( j+ b* x0 C) P                swarms.buildObjects();. r, s. N/ @# ?+ c# f& y
                swarms.buildActions();  D# [8 M" z/ g; z" q, f& R% C& |% |
                swarms.activateIn(null).run();- S. p3 w9 R2 C1 v
        }
$ Q; d1 e; u  L  F- C: w
( b) q8 k- B) ], b5 Z}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-2 14:41 , Processed in 0.019550 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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