设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6975|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 m5 q  n5 j, y9 }8 x( B6 i4 E( s
8 X' F# V: M  j! G$ _
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 V% e2 A: X! W8 v/ X
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ h6 \5 O/ B3 \& j9 W
swarm.SignatureNotFoundException
& c0 [$ R  J& I! g        at swarm.Selector.<init>(Selector.java:76)- n# \" H. S. \" Y* T' R+ R
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- y8 w9 K+ a& N0 L* ~" Z        at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ r/ H. a: c0 d9 }7 q/ c3 t1 D2 ~* s& ]# n* D( {/ P" |

  U7 T, x. ]4 j2 r4 M( M* Q9 jimport swarm.objectbase.SwarmImpl;
. M8 ]9 r9 v' U8 P3 eimport swarm.objectbase.Swarm;
5 t% G/ h1 B& R- ?, h" T& Eimport swarm.activity.ScheduleImpl;
, ^# J7 h1 {8 pimport swarm.activity.Activity;6 x2 `/ }  W# V3 Z% A& O" _4 W% y
import swarm.activity.ActionGroupImpl;
3 w' c# a$ _. B5 n/ Rimport swarm.collections.ListImpl;
) n2 V. t3 J% j# U+ e; U3 ^import swarm.defobj.Zone; 3 x/ U3 o8 D, g4 M  P
import swarm.Globals;* }' w, D0 H. M6 ^$ ?1 d+ X! G
import swarm.Selector;
. `2 ^* w7 g1 w  }2 o! bimport swarm.activity.ActionGroup;
0 @( ^. c- @5 r" J6 D8 S9 n1 \+ l5 mclass Agent {
" E$ I/ g# O& s1 ~" L% M  }        char id;
( _0 u6 Q1 \( p+ E2 K5 V6 f
) w  q* ^5 N( i+ E6 M7 y        Agent(char id) {- s) y9 K) e5 m5 Z6 L$ E
                this.id = id;: G: C2 K6 W. T! b
        }
1 Z6 A. v% x7 h5 D2 d
" s+ M/ M/ F; l$ Z7 ], O. n        public void agentStep() {, k& M8 M9 F* ~% _6 O
                System.out.println(id + ":" + Globals.env.getCurrentTime());  b) E$ r% ^  t8 t, q: h' u
        }
2 S2 z* b7 X, g7 _$ i}
& a" n8 Z9 S( Y% C- O; j, ~/ a6 f9 s% k8 d. t: Y$ O, v0 m4 g, s' P5 l' b
public class ActionGroupDemo extends SwarmImpl {
4 T- p1 v: K  ]        ScheduleImpl schedule;
2 j4 q! s" A* i2 I. p) J        ActionGroupImpl actionGroup;
+ U% L& g5 `% Y" f. w4 d        ListImpl list;. K% x$ e$ {7 R9 n# L; q; C8 x
        char Id = 'a';
% n2 i( M& H7 S$ U9 N9 c/ F& l6 I: U9 X# Y' T/ @
        ActionGroupDemo(Zone aZone) {$ `/ c% G3 c/ D& z: D# Q, _
                super(aZone);
+ j4 h8 C+ _6 }3 N                list = new ListImpl(aZone);' o5 G$ @  Q4 ]" S9 j
                swarmSetp();6 ~( l1 a9 O$ p, d+ O
                actionGroup = new ActionGroupImpl(aZone);
0 u8 @1 _: |# ~                schedule = new ScheduleImpl(aZone);. b/ r; q; `, W+ ?
                try {
0 W' @4 m/ q! d+ B' Y                        Selector agentSel = new Selector(Agent.class, "agentStep", false);; Z& x8 [0 `% d7 r" O. b: O2 }7 ^5 t
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ k% t" r& z/ U& L$ q. [7 H6 ]4 l                        
! |& w* P' T3 b8 _                        actionGroup.createActionForEach$message(list, agentSel);' z3 [, m  x2 G+ J  q! ]
                        actionGroup.createActionTo$message(this, swarmSel);
/ q+ h; @+ g  O8 D- c                        schedule.at$createAction(0, actionGroup);) q5 g/ }8 }, n6 d8 {0 B$ v
                        schedule.at$createAction(1, actionGroup);1 K/ |: \' K  A& u2 u
                        schedule.at$createAction(2, actionGroup);
9 N( O- \! ?. e/ `! }- _
9 e* a2 l! ~9 N) c                } catch (Exception e) {
( g5 i/ l- o5 _2 d0 ]* {                        e.printStackTrace(System.err);
& a3 h+ [* Y4 E7 D* I3 f2 k7 Q& |' Q                        //System.out.println(e);
6 V" f3 w8 x7 h                        System.exit(1);* I" U7 X3 F: a, g7 E2 u% K
                }
  V* F0 ]+ P- T* T9 A* c4 {, |3 _9 u* b, W+ M# Y% O

; `. a0 ^5 E. ]0 Z        }
, U4 b/ c) ?6 U- V3 M, f
$ U* @/ I0 U! }        private void swarmSetp() {1 R& k4 _* c0 Y+ ]  i
                list.addLast(new Agent(Id));1 T3 V; T2 [3 q& R* ?$ C9 ~8 x4 U
                Id++;
' @2 b. F" j" Q4 P' ~2 H/ }        }0 w: w3 R* q$ p9 k$ f0 J4 U+ F/ Z( k
. _. a, m) I) }4 ?
        public Activity activateIn(Swarm context) {+ E! w" E5 ?; R! o# W( Y# T  Y2 L
                super.activateIn(context);# k* j# f. q( X6 N& [, Y
                schedule.activateIn(this);
* o7 E# u& e7 s  |3 J                return getActivity();6 V- h# Q2 H/ p
        }
$ e- m, Q5 d) N& D7 ~$ a4 B/ {! M# ^1 I: F  y- x2 Q- A3 `$ z1 N
        public static void main(String[] args) {
, q4 V3 C0 \+ L2 s                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 x* }. e7 B8 u: G5 `6 c. }0 ?                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" l3 ]: d: o3 Q: }                swarms.buildObjects();; [  V. ^" J$ m: a
                swarms.buildActions();
, u6 I3 c9 Y+ X                swarms.activateIn(null).run();& w0 ]% `7 S# q- v  m  {
        }# \$ p3 e6 |* ^5 g$ m1 |7 E
+ y: Q% J1 n% y0 ]2 r
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-15 09:56 , Processed in 0.016462 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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