设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9231|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 a8 a+ }- v" r! L% _& D* B3 h
6 B" ]& s5 \. \, j) N2 D
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; g7 R( Z+ J/ ?% d
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 Y/ K4 D2 b/ G7 O( Xswarm.SignatureNotFoundException( l  v& V1 J: w. Y& \( [+ b7 T! `% N% b: Z
        at swarm.Selector.<init>(Selector.java:76)
. N0 @, R: w6 G( C+ `/ J1 Z5 B( [        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ D) r& N. r! F! Y6 j) k
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
. F0 x" B2 W, k( R+ r0 C& g7 @4 j/ {* M/ l5 c4 n
- E3 C. M: u( G, \/ T& G) @
import swarm.objectbase.SwarmImpl;' G, W* y& F7 b; b2 ]# O
import swarm.objectbase.Swarm;
" y. }- t8 [0 c) X8 Rimport swarm.activity.ScheduleImpl;+ A* t5 N+ X. _8 O6 J; Q
import swarm.activity.Activity;
( m- a$ ~+ X* Oimport swarm.activity.ActionGroupImpl;  R  h: e- m! R# f2 s4 e. W, D
import swarm.collections.ListImpl;. Y" l; U3 x9 O8 w) O4 G+ @8 I
import swarm.defobj.Zone;
/ ~: q, ~; N2 Q% K/ Uimport swarm.Globals;5 W; T. P# _* o$ p$ m
import swarm.Selector;  `  Q% v/ h3 o
import swarm.activity.ActionGroup;
  Y8 j6 X4 ~* ^  zclass Agent {
- z+ j* }* a& B* G* u        char id;* N. e3 j9 ?7 [

: D3 I: X  q) V        Agent(char id) {
/ L2 d8 i5 z- A# ]' L                this.id = id;
) r/ p! H0 |- C4 C) j        }6 t$ Q4 K5 `4 w% G% u7 u( X/ N
/ k. B2 |' n" g6 n8 A: K' g# O  f0 e
        public void agentStep() {
* [4 C6 c% ~; D: x                System.out.println(id + ":" + Globals.env.getCurrentTime());
$ s# n/ s6 Z. r& R0 M        }
. s' n% o. X& _- z* U}
4 _* J; ~; o# Z/ X; @- F0 ^+ ]0 h
1 A' z( R$ |1 V: ipublic class ActionGroupDemo extends SwarmImpl {
2 e, p, [! @$ G1 `        ScheduleImpl schedule;! b. B' I1 v% o5 c
        ActionGroupImpl actionGroup;
! k3 i/ h% l& C        ListImpl list;& ~6 u6 A1 p/ u5 W* h; L
        char Id = 'a';: x! o3 y1 A5 v( \" g& @

. j0 D5 J. S; `        ActionGroupDemo(Zone aZone) {- j% D/ a) P. z* F. [7 H
                super(aZone);+ }5 _  H6 l6 P  A, `8 K
                list = new ListImpl(aZone);
. U4 p* \. j+ D# [; s  C                swarmSetp();+ C$ Q) b% |9 d
                actionGroup = new ActionGroupImpl(aZone);: J3 v* }. Q) o
                schedule = new ScheduleImpl(aZone);5 @2 C( S# d& a! \
                try {
. p3 t+ E- d5 P                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
  n3 C; A: k' J% P2 U                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 I$ S/ t, S0 R; D$ g" b3 @' o                        / O: _( M  m' o9 c/ Q, q4 C
                        actionGroup.createActionForEach$message(list, agentSel);
2 F, `2 x  N( Y                        actionGroup.createActionTo$message(this, swarmSel);" Z- Q, ~6 z: Q' v
                        schedule.at$createAction(0, actionGroup);
+ `/ f: q  a4 T4 P! g                        schedule.at$createAction(1, actionGroup);+ e+ M1 E: F( E+ [4 E/ T' T
                        schedule.at$createAction(2, actionGroup);
( v3 t- w( Y& H! F/ b- n' q; q6 R. |, {2 f3 E
                } catch (Exception e) {' }/ ?% t7 @9 f/ A) N  D. v( P
                        e.printStackTrace(System.err);) C# p5 Z+ w* j; N# r. q! Z
                        //System.out.println(e);
6 Y4 b* z% k! G# A* v$ N+ f, r# R" Z                        System.exit(1);
& Y+ w' N( I6 B" q6 v$ [0 q* E. h                }
! n6 a  h5 y3 ^% C2 U1 e  r" `0 x
* Y! u+ L8 _* N/ G' @3 l
5 k' b" M( x, V2 p0 k4 D        }' ?+ ^* o: ?9 L8 l
9 [" u) ?7 }% C: _
        private void swarmSetp() {
* p9 G- c( C' M9 b. y4 C; r4 O) p5 O9 J                list.addLast(new Agent(Id));+ O- x5 _5 m5 U) p
                Id++;9 Y! j2 U4 w. c) |" R+ Z2 |
        }4 l$ ~) Q( j3 E0 G* Y
5 n& V: ~4 I& \3 s8 q  l
        public Activity activateIn(Swarm context) {( `- h5 X. V' s9 T9 E, c2 k
                super.activateIn(context);- [4 u2 b8 D6 M" v) b
                schedule.activateIn(this);1 b- L1 f. T) ~9 [: Q" ~
                return getActivity();
3 N$ `" N- `6 P  u2 W) D        }
9 ^+ J; v$ w2 `! K5 W2 D" q5 f! H+ v
        public static void main(String[] args) {! A, d+ D0 z7 L% O
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 Q. d7 r0 [/ o" l# k  [                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 u4 w* Q8 f5 \* q5 h                swarms.buildObjects();
: |* s+ Y" u- G                swarms.buildActions();5 P5 S, m9 M- O) S+ Y
                swarms.activateIn(null).run();
5 a: T  {6 i8 ~; n' p, n4 \        }9 o0 ?$ J4 i7 g# L2 G

; V3 N8 s0 \9 ~+ X& y) Q}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-6 04:31 , Processed in 0.016508 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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