设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7686|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑   X9 o1 u$ F2 _& ]

/ J6 Y( k, M; P. B! L+ F1 S本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) k! \' ^& E. A: y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) W* k* W- g; ^+ v" i( Xswarm.SignatureNotFoundException
" w8 {, P: ~- h. ]1 a  E( Y& S        at swarm.Selector.<init>(Selector.java:76)
1 n2 ~$ _" {/ ]. C        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& A' W+ T  @! p4 s/ k( @
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ O5 l1 G4 Q: c; c+ ~0 \
: _. d3 l# a* R( H6 s$ _
! L3 x/ s& L* _' k) B. }: Simport swarm.objectbase.SwarmImpl;- b& [9 e+ A% ^
import swarm.objectbase.Swarm;
4 ~0 F* ]4 E$ c8 Y+ Kimport swarm.activity.ScheduleImpl;
" P1 A" W0 h% r- x! r# z- uimport swarm.activity.Activity;0 w% [) J5 k) M8 ?
import swarm.activity.ActionGroupImpl;& J; @' c+ o! O- d
import swarm.collections.ListImpl;, C: A. k2 X4 }7 A0 D" ~. O
import swarm.defobj.Zone; 7 W0 N, H! ~" _' o" i
import swarm.Globals;1 V' ~, m* i2 E2 j$ O9 f& }7 O0 A
import swarm.Selector;; f3 e- _+ P4 y8 p( f& P1 ~
import swarm.activity.ActionGroup; 0 S% z0 P# M3 }. o/ }1 T% ], b* K* k3 G
class Agent {
  d7 y/ ^4 K- a% q6 @/ }        char id;' \  o, k8 A  }" D: d# l

7 d4 P/ Z, f& d. q6 q6 p3 H        Agent(char id) {, y& }: k1 N* S& m+ k! f
                this.id = id;
; U  R2 z5 W* o! J/ Z3 M8 d        }
/ P' z' r; E; h, H7 p; D% L6 s2 @1 V
        public void agentStep() {
- {0 f# _$ I* t- _" e( P& j# \  I                System.out.println(id + ":" + Globals.env.getCurrentTime());
  E* d4 Q& s) f1 w+ |        }
2 k# [9 E8 B( ?2 W" t9 ^}
0 }. |# H! k7 X3 i* g
2 M8 z7 t2 |* i& [, F: N( N+ I0 E& kpublic class ActionGroupDemo extends SwarmImpl {
& g3 v% \9 m8 O# y+ x; C7 X* B        ScheduleImpl schedule;
* P( \1 _! [1 z7 L: R( p  k        ActionGroupImpl actionGroup;* u% Y3 a5 i* }* N# g9 i
        ListImpl list;7 b8 K) \7 g' s) z# {
        char Id = 'a';' s, j5 k6 f7 H' s) t

  b8 E7 R. T* x7 [& c        ActionGroupDemo(Zone aZone) {5 m' m' R! c! v3 p/ x& _0 s
                super(aZone);5 h4 h; X& J! v; _$ q
                list = new ListImpl(aZone);
, s% V5 N9 g7 B; W' t- o& o" s                swarmSetp();
3 [; @) H4 {1 |: F- W8 P' @                actionGroup = new ActionGroupImpl(aZone);
- d3 s* F- M( `                schedule = new ScheduleImpl(aZone);1 b5 ~: q& K3 U- o
                try {
" _) s6 y: U& Z$ d                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 S* o4 m3 K% s                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ K9 ~- k. X& [" q
                        
  f! O* o2 N( p                        actionGroup.createActionForEach$message(list, agentSel);
& |' O  E% ?/ t. v                        actionGroup.createActionTo$message(this, swarmSel);4 i, _# g5 i6 H- S
                        schedule.at$createAction(0, actionGroup);
; m- K" r% F# v, ?* D; [                        schedule.at$createAction(1, actionGroup);: f4 R6 ~, S, q7 M) Y. ~. Q5 Z
                        schedule.at$createAction(2, actionGroup);
3 n8 T2 h1 ?: i! W" m' c/ g! j/ x) n- g5 w# c
                } catch (Exception e) {8 p4 r3 F3 r; z$ h, C7 S/ v
                        e.printStackTrace(System.err);
1 k2 F# q, b! [1 t% X                        //System.out.println(e);
# r" p0 k7 J: c$ l$ |9 `                        System.exit(1);% u4 V% ?) d( H5 H. F/ H: N9 M" X
                }
* Q; ]$ L: l6 e$ Y1 w  Q. r4 J% [6 _" e

/ y& z' c- n* Z& S        }
% Y2 o) c' }. b; B/ q; T5 z; ]% [& B4 x; L
        private void swarmSetp() {7 G# r1 a! C2 y+ x, s
                list.addLast(new Agent(Id));
1 L$ Z/ b+ t/ Z7 v( |$ X                Id++;
6 z+ b- y& [9 t2 `$ z& b0 g        }: o( X$ g' Z: {! _, \4 g- r" Y
2 Z! Z* K& f: R( d0 g: u' T7 ^! u
        public Activity activateIn(Swarm context) {. s3 O6 }% `, q1 }% w7 Y/ i
                super.activateIn(context);
# a8 _* Y2 Z( b: ]( z# c" Q" r                schedule.activateIn(this);
! \5 U, |: U, E; ^+ j# E                return getActivity();
, L. g. h5 u. {: s        }
$ D' q6 `* U" j) |- t7 P* n
0 x' m7 J4 ?8 W+ X1 _6 K/ Z        public static void main(String[] args) {
7 g# P! M: Z" M4 N8 y" d: L                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ z( ]0 N! W% n  p, n                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& g. `$ \7 H, u% K& h" Q
                swarms.buildObjects();
) Q3 b9 A) l' D                swarms.buildActions();) J6 t! q2 v+ f! u% O  E3 _0 K2 U* T
                swarms.activateIn(null).run();
8 W: y  ?' v. W8 H7 M8 D0 N6 c; Y        }
' K' u  L& e1 M$ L0 W" |
( ]; y7 ?0 H% A) _}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-11 10:51 , Processed in 0.015614 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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