设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10053|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ) o& L0 c* F- ^/ z  B; V+ Y% V- z9 n
$ F  Z2 U; U* k3 E) g6 h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) g: @" H+ G0 }& N* @! Q8 [以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ A0 W" N9 C4 J. T$ y- f( L
swarm.SignatureNotFoundException. d5 T2 f3 B) v2 b: x
        at swarm.Selector.<init>(Selector.java:76)
, A& d% i0 Q. S, B5 ~) Z9 w; k: C        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ H& x5 [1 ]3 ]3 h9 q        at ActionGroupDemo.main(ActionGroupDemo.java:67)
* x" I3 R! j% R" m/ g( c$ ~4 ]+ R6 s4 g- \( p/ A
7 h) I2 d7 [6 e
import swarm.objectbase.SwarmImpl;
; z8 c. h8 `- k( ?. A! _: E  Pimport swarm.objectbase.Swarm;8 a9 F) S) H% l& m6 K
import swarm.activity.ScheduleImpl;, w( `' o+ o' h1 j3 s5 v) j
import swarm.activity.Activity;/ T6 o0 \8 m, a' Q
import swarm.activity.ActionGroupImpl;2 t8 s  Y' p+ M. d8 R8 `4 y1 v
import swarm.collections.ListImpl;
; Q- m/ x. Y$ j; Q3 p( _# h: vimport swarm.defobj.Zone; 0 t6 e+ O; x* x. I- R$ ]/ W
import swarm.Globals;8 L% A! I) |5 W) g4 c! y3 y
import swarm.Selector;
# ~4 l. \7 x8 w, S8 ~& @; ^) F3 Eimport swarm.activity.ActionGroup; & ]0 h+ ~2 l: N  d1 I
class Agent {9 Y. d. C8 k' u3 Q8 Y- o
        char id;
( J$ P. Y5 E7 C' A3 L( P1 M+ S, u7 g* D: d: n7 P
        Agent(char id) {
2 q- `' M/ @( P1 G  M2 v                this.id = id;
" ~+ }, }; M3 p+ ?# Z* A5 w. N0 H4 Z        }
5 A# j2 ^* O3 a( V
: V+ W0 G3 }, J2 D4 J! V5 u        public void agentStep() {- V  ?& Z& k8 x0 t; X+ }1 _3 ?/ a" s# B- c
                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 ^7 y' _- I# v& O4 g        }4 R( r* E5 o: j
}
* t& x/ O) e" d# V8 V" Z2 S& T( c: a% o- S" K1 {7 l* ^. v" f! ~
public class ActionGroupDemo extends SwarmImpl {
2 J# i  A( `$ g) O        ScheduleImpl schedule;
+ t6 w3 A# e- @$ \, O$ _" J; A        ActionGroupImpl actionGroup;, B4 S0 L* U/ i+ ~) G% R
        ListImpl list;
* `( b$ e  ?' u' p! r/ E$ H        char Id = 'a';. B  y: V3 U4 j5 L4 r' V' Q8 N
6 ~! F. D; f' D; n- P7 J
        ActionGroupDemo(Zone aZone) {& W. H/ e+ n1 P6 y/ I9 G& @/ E2 D
                super(aZone);2 ?; b9 B& L  ~1 Z; d$ D- c# ^# v
                list = new ListImpl(aZone);6 X/ S- v4 w, @: x
                swarmSetp();5 b+ _" ?* Y: T( K2 W+ L$ F
                actionGroup = new ActionGroupImpl(aZone);1 \9 p! H5 `* A7 K4 A" H  g
                schedule = new ScheduleImpl(aZone);
8 R$ l9 z$ L$ ~+ Y. ~2 c                try {9 l7 f! `# m0 b
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 S$ C& ]. a/ G- u1 l7 K/ G                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% t+ T: c' Z1 i; {/ K. ?                        
6 _2 M0 O/ h) m! {/ A  T1 p                        actionGroup.createActionForEach$message(list, agentSel);
2 M, O5 _' a" u9 ?4 B8 v; l                        actionGroup.createActionTo$message(this, swarmSel);
6 T/ k# z' \# T2 C9 T, u) B                        schedule.at$createAction(0, actionGroup);
' Y1 I2 K. Y2 O4 x% N1 o+ R                        schedule.at$createAction(1, actionGroup);
9 y! @! l% q* [; w0 B# \. l                        schedule.at$createAction(2, actionGroup);
; {. ~2 Q) Y' H  o% t6 M
2 h4 f6 u; ]" ?+ x                } catch (Exception e) {$ W+ V1 Z" s5 ?
                        e.printStackTrace(System.err);& z. m" |0 C* N; F5 _
                        //System.out.println(e);
9 f- E+ E3 K' N, |% L- |4 z  o                        System.exit(1);: N  e7 ~( V) B% y! X3 t5 u) ?* T, _
                }
# s6 y) Q! @3 N5 t& h, |' a4 h: z7 Y) `

) `5 B* ^9 P* S- Q4 y        }
/ [/ i' X5 r: I; @) d/ z. {" X4 X' e6 x8 d
        private void swarmSetp() {
- ?) ?% C; c; m4 U                list.addLast(new Agent(Id));4 ^" q2 N8 Y! q8 b3 ?7 D! a
                Id++;" \7 c5 l2 v3 |/ S" I
        }; @+ I6 b, d6 n9 k& m. h/ g/ F) _5 f7 O! B

" ~8 ?% W: W; @3 L1 ~! ^1 {        public Activity activateIn(Swarm context) {
' E/ B+ _/ R+ e$ o7 k1 t                super.activateIn(context);
8 N1 |- F6 e  l1 [8 F                schedule.activateIn(this);. o. A/ _, U8 m/ e* _
                return getActivity();
& }8 i- z1 U- |  w; m' J        }. ^& B% `: |$ A3 Z3 p# k8 ?* {

( l& b- h3 V5 D  m" Z        public static void main(String[] args) {
! d5 g$ N/ x3 S9 Y! o0 q; g6 d                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! T- |9 C& C5 h, E                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# H5 m$ v5 }; m                swarms.buildObjects();- W. I$ K9 J! `" B! ?- T
                swarms.buildActions();5 x/ h% P) t# H, d. y
                swarms.activateIn(null).run();
+ i1 Y4 N% b# I9 H( G7 x/ }        }
' U, R3 @5 h5 Q. X; s( {( G# U/ X0 b8 v2 x" ~
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-1 23:08 , Processed in 0.014063 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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