设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12970|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 p$ z! P3 q0 `' B% q3 z8 n2 X% s4 M
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, C- h/ `% b7 T3 c以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" v, \  B( c$ nswarm.SignatureNotFoundException
$ e. A) v# ?  e5 p1 [' u/ i        at swarm.Selector.<init>(Selector.java:76)% e& R5 }4 Q4 D2 S$ w9 S% t& B
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# d# Q( ~" V: _  ?( W* q
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 z) |- @+ t. h9 t
: N0 ?5 {% s! Y8 K% K
( e9 M4 T, a- k$ f3 Z3 P; [2 ?import swarm.objectbase.SwarmImpl;: E) R$ j1 g1 U# c" {
import swarm.objectbase.Swarm;, ^  H" K; k7 _& K% l  r
import swarm.activity.ScheduleImpl;7 f# Q3 R  t* d& n4 d
import swarm.activity.Activity;! h) h. t" E1 j; {1 p
import swarm.activity.ActionGroupImpl;# W/ T9 h5 \7 c3 Y$ ^( b! r
import swarm.collections.ListImpl;
/ P4 f8 u6 O! Mimport swarm.defobj.Zone;
( P5 x( j0 `( K/ s8 a: Jimport swarm.Globals;( E. L" f; t! d1 L8 F
import swarm.Selector;
- b0 R  A; a1 A: s4 uimport swarm.activity.ActionGroup; & A6 K" Q% b" u/ Y, M% R
class Agent {
& M& F! D+ Z8 \' f9 w& c        char id;
7 ?8 p4 z% N% d* k. t
; F7 W: j9 O* j$ Y4 Q) j        Agent(char id) {
2 e2 c$ U7 n( I                this.id = id;
1 _1 P: }8 [' M  E) V        }
- L: M, r  |9 J; O3 E: u6 a; m' e7 c8 I. x$ o1 q: r+ o
        public void agentStep() {
) x1 Y2 _" P4 t6 F: M/ n5 x                System.out.println(id + ":" + Globals.env.getCurrentTime());1 E! H- H8 H! R
        }) e$ l, f  O! C0 ~, Y8 D
}5 Q0 P' z! j  c4 o

9 t' P6 `8 N+ p) Apublic class ActionGroupDemo extends SwarmImpl {
1 J# l) \& Z/ R) I, k        ScheduleImpl schedule;1 B6 K" O# m  D; w
        ActionGroupImpl actionGroup;2 D6 c, y: v' I. `1 k. X& L! q: A' F
        ListImpl list;, _: W9 K3 W# A9 t7 w# g6 s0 f
        char Id = 'a';" M% T8 g- Q) x* ^: w

' B! f0 ^/ K4 @/ h) q5 x. ~        ActionGroupDemo(Zone aZone) {" p- g7 I. _# b4 l( Z4 ~
                super(aZone);
, \- x0 u* W/ q$ K$ {3 J5 ?* x- m) F                list = new ListImpl(aZone);
) l4 `% ^" K! M% q                swarmSetp();
$ V& A$ _: ~% n6 F                actionGroup = new ActionGroupImpl(aZone);2 c3 u7 D8 M( @1 n* y/ z
                schedule = new ScheduleImpl(aZone);
6 X$ j" Y7 @4 {. J/ x- T! b                try {
6 z7 _6 m8 R0 l" ]$ E" w- Z                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
- Y6 K( Q' i' C! C  o6 _                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, f/ n3 p0 r. p7 I9 p: S2 p                        
, R! C2 f. A+ E; b% t                        actionGroup.createActionForEach$message(list, agentSel);) R# h9 J' h4 Z8 y& y1 S
                        actionGroup.createActionTo$message(this, swarmSel);4 {9 }: F* z6 S, A5 L
                        schedule.at$createAction(0, actionGroup);* @: y/ V; t9 V. ?2 x
                        schedule.at$createAction(1, actionGroup);
$ ]% b. h0 v* c9 P                        schedule.at$createAction(2, actionGroup);4 f. ?0 `' ]/ O" R* l+ Q* O; O
- a! a9 u* j& r1 b/ G, h+ P4 L
                } catch (Exception e) {
/ H* n) Z' S/ L0 C. A8 f0 d; A                        e.printStackTrace(System.err);4 e/ |; z) Q5 P1 |# w% w' G/ Z  N+ F
                        //System.out.println(e);" j0 l7 w; m- I
                        System.exit(1);& H: N  d2 V- ^3 Y) U7 l
                }
/ r" Q$ p) J% E% J3 P* s
6 s1 \4 C. U( j- C) h8 u( ^' x
/ r( Q" u# @8 b; }0 s. B        }: r$ _2 f4 k5 @
, k( V4 y2 [/ [
        private void swarmSetp() {' h" B- D% r- {$ }
                list.addLast(new Agent(Id));* m5 _8 e" o7 A0 n; \
                Id++;
* e- n) d0 A( D1 j. a# J        }& K2 U4 e' u% q0 P9 z8 P

$ O# z$ e+ J( W        public Activity activateIn(Swarm context) {+ W. ~; j: C7 n+ }$ b" g& s
                super.activateIn(context);
7 Q2 d6 S5 L  F9 \& }                schedule.activateIn(this);
: }2 y& [1 J+ ^% z" U+ G                return getActivity();& L  d9 O! F* R) @$ _- M
        }9 s$ Z7 ?# h  m2 Y

. ~+ b+ V, E; F3 p: A- x        public static void main(String[] args) {( u' K# _1 \$ G! U" c- Z' J
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# n9 I: \/ v" p1 D2 ~                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ {' z4 {; O- \+ W: S5 K/ O: `" P
                swarms.buildObjects();  H" @2 {- h# N8 V# d
                swarms.buildActions();2 v: G- ]* |! M3 V5 \
                swarms.activateIn(null).run();; h- S: G# U+ q
        }
! I7 X( X$ Z+ o: _
9 ^5 }* O6 ]- @/ U1 M& ]}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-24 16:05 , Processed in 0.019308 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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