设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7609|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 n( S+ X" f6 f- V# O) q6 h
4 C# o2 T1 o1 V2 ]6 K5 r' e7 }
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, S/ f1 r! _4 ]2 B8 \以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! v7 P. T' ^0 p! D) |
swarm.SignatureNotFoundException
9 g0 Q, j  j) ~: ?* \+ C$ X        at swarm.Selector.<init>(Selector.java:76). |$ R7 `4 w$ w% c& X- n
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( y3 p# H% [3 K  i* ~        at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 W" G9 C0 y) b. A1 ]2 r
5 K0 ^4 G  C& L7 J2 g, |4 }$ \! i- k0 A  R9 x  M; N, W; }% i( b! K6 m
import swarm.objectbase.SwarmImpl;: B, w; n7 ^" [: X* L1 q! p
import swarm.objectbase.Swarm;
+ Q7 [" ^+ Y: d- b0 \) limport swarm.activity.ScheduleImpl;
# y% E) @( l% d/ j6 ~import swarm.activity.Activity;
) C' e/ m* G7 F8 U6 i& h  Ximport swarm.activity.ActionGroupImpl;% O# d" L4 |5 {3 B/ Q1 B* v. V
import swarm.collections.ListImpl;
: M7 }8 N) @) limport swarm.defobj.Zone;
) W$ D/ r' `6 f7 k+ m+ F, e; dimport swarm.Globals;* F, A# ]/ K1 O' U) U( D
import swarm.Selector;9 y/ h9 Z" f4 J5 c  g. o
import swarm.activity.ActionGroup; % j9 y+ N* j: d7 {& m
class Agent {5 n( G) X' g' {7 z9 H" B
        char id;1 u* p& [/ h3 V* I

* q' ]+ S" e2 }9 Z. F( I        Agent(char id) {
, S- E2 y+ ~" o4 W; O- f                this.id = id;
+ q8 y  J- W" O        }
& J  V& r1 R5 X6 S! }0 a2 Z' j/ A( ~9 Y0 i- x
        public void agentStep() {4 l* B. R; h# T& n1 o$ Q- _
                System.out.println(id + ":" + Globals.env.getCurrentTime());
- t  a7 v  i" c3 v+ e        }  g2 j7 _. W% J6 k
}. m$ o3 K% t. J/ C' ~& x) I

9 Y5 O* k( Q: S3 n- @8 Ppublic class ActionGroupDemo extends SwarmImpl {3 H+ m4 `' v5 U0 p) W' r  g
        ScheduleImpl schedule;
' U4 f2 _+ ~4 [+ u$ Z        ActionGroupImpl actionGroup;0 a6 n9 C6 Z2 k" W
        ListImpl list;
- S; {7 P2 R: ]# }0 t6 `, `        char Id = 'a';7 @0 c# j% r% y

; l( F9 Z" A9 f3 c( ?2 z) I        ActionGroupDemo(Zone aZone) {, u: V4 Q: U1 L
                super(aZone);! I* K! a. p# q$ W" z! B
                list = new ListImpl(aZone);* L: b/ A7 a6 X6 ~( v9 p  ~0 ^+ O
                swarmSetp();' e9 T! \7 j. [) b! h9 W  D
                actionGroup = new ActionGroupImpl(aZone);
, @  v, x) K9 H$ @. ?+ I                schedule = new ScheduleImpl(aZone);
( N$ L2 O1 e+ Z                try {
! e7 _3 w8 W; ~2 H  w# L" p                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ b5 {, m, m& M2 Y- R( ^                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ F, v) U0 V5 t" v* R
                        % o6 r1 K6 s! S6 C4 T
                        actionGroup.createActionForEach$message(list, agentSel);4 {$ X7 s; |- s% G% f8 ?
                        actionGroup.createActionTo$message(this, swarmSel);8 l7 u* V9 }( r4 i1 P
                        schedule.at$createAction(0, actionGroup);3 _8 _. E) p5 i" c1 Y
                        schedule.at$createAction(1, actionGroup);$ }0 j7 g0 s, R6 A- p/ ^0 z
                        schedule.at$createAction(2, actionGroup);6 l5 s/ z  R6 H" R: g: [- a

& i1 @3 `7 v3 H  J- N3 ^                } catch (Exception e) {% z2 H7 c: N9 y2 h/ q
                        e.printStackTrace(System.err);1 |0 v* c* r) e1 _5 l* d! b4 ]7 B
                        //System.out.println(e);
: B4 u% Y0 ]( r& Y3 F; Q                        System.exit(1);
# e5 w3 c# v3 p) y) n5 Q/ d                }# q: J0 E" |3 r; F4 q: _& A$ P1 R

& M  y, H% Y( K3 m$ F8 y. c* a+ z+ i9 P- q! Q; x
        }
; z" c9 @, v, b* S" G. q% `* E3 [! E. k
        private void swarmSetp() {) s% x, L3 S7 {
                list.addLast(new Agent(Id));- f; X3 G9 h' w, D' V* Y
                Id++;
5 X' C' o' a) w6 H9 L1 V        }$ S+ V" l; f* P' Q: \: G8 f
/ y& q9 S5 v2 r' {1 A8 j
        public Activity activateIn(Swarm context) {
2 \$ L3 L% Q1 A" y( m                super.activateIn(context);
. _  }! k# A5 k$ J5 E                schedule.activateIn(this);
; `3 t$ A$ v+ R- e+ G( s3 P* p                return getActivity();
7 L8 G: w/ @0 I0 w5 }. W        }" c  |1 a8 H! X' l. |

$ L4 W! F2 `3 v% M: a/ k        public static void main(String[] args) {: b; W" }+ u3 u! X# U. \% F
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ E: |3 _% K. z  M- J& O" s5 g9 L
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 ?, e" I# [$ y4 W7 ]- x                swarms.buildObjects();
! t$ m( X, H. F1 a' O4 V                swarms.buildActions();* L# G3 O. _/ p8 E& t, u; `
                swarms.activateIn(null).run();% W5 F- h( e( s) r6 I
        }
! X5 Y& T& O5 d! h& o4 d8 ^+ u( G8 F* V# X
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-8 11:53 , Processed in 0.014497 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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