设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13990|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 i* _, ]+ t# ]) x( L8 g- {' K. v' j& |* ~
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; L( N" c$ _6 o) D$ t# X2 I6 ]3 ?以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., G" f; n  p7 Q, }( T9 ~* c
swarm.SignatureNotFoundException% d3 [9 c! b1 ?- s- A
        at swarm.Selector.<init>(Selector.java:76)
& [. r8 R+ J. z- m1 b" Z) k        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
  e* K; F' U3 n6 a/ T2 U% I        at ActionGroupDemo.main(ActionGroupDemo.java:67)% k6 g' S( Z! Z/ U9 ?. o3 ~
9 O4 Q; y  w, P1 B
) t1 `4 B+ l. E0 s3 V
import swarm.objectbase.SwarmImpl;
% p5 e; y5 p4 |8 n1 simport swarm.objectbase.Swarm;5 K6 a2 b6 z$ B# a
import swarm.activity.ScheduleImpl;
, _& i7 c& t! ~( m2 Z2 nimport swarm.activity.Activity;
9 n, b. U4 j# V- f1 x! n- qimport swarm.activity.ActionGroupImpl;
- F! G: ^( T6 e5 q, simport swarm.collections.ListImpl;3 [6 U; r8 [, h6 Z, Y
import swarm.defobj.Zone;
2 m3 o& M! [$ g3 f9 L) W; V4 d/ eimport swarm.Globals;
5 k6 ^5 h+ O/ A1 Oimport swarm.Selector;
) `& N' S% B" y  R  t8 z& J; \import swarm.activity.ActionGroup; + j  X+ y3 W0 L! ]0 r( B
class Agent {! W# B4 z) d; k5 I- b
        char id;
* c( L; f0 K5 }$ C/ L7 R$ V8 \/ r$ Z9 u8 X7 N# D' `4 T
        Agent(char id) {
# D! q, [  t8 K0 @                this.id = id;
% J; `7 S4 n& F9 A4 }( u        }
3 w; E4 z# a; J5 T4 k( Z- [
. r1 W9 q1 [: B! V1 S2 B* f        public void agentStep() {
: |2 |4 W( G1 Y8 ]' |7 X- T0 l5 {                System.out.println(id + ":" + Globals.env.getCurrentTime());* O7 H2 R: p- f2 R! E/ M
        }
# t" D) {  X8 A0 l}
- l  f! x7 O) w4 J. J
9 N, b* m( A# W( B1 J/ Z/ W7 [0 t& N* Rpublic class ActionGroupDemo extends SwarmImpl {& h0 }9 i* R  b* m7 q+ {
        ScheduleImpl schedule;  [7 I# y& k, a0 W
        ActionGroupImpl actionGroup;
( J5 b; S& C+ T( H5 S        ListImpl list;
# ]# e# H9 {! p- V6 I        char Id = 'a';
6 T; J7 s6 p5 |* E6 [1 i+ ]$ J/ i3 \2 Q; ?$ i6 g/ ~9 e
        ActionGroupDemo(Zone aZone) {
* h6 l; m0 y+ n% f, e0 t1 [9 W                super(aZone);
. Q& g* f' L# \                list = new ListImpl(aZone);4 j* j6 |1 ^+ I# L9 o$ Y/ a2 _: H
                swarmSetp();2 g1 t3 }* F. G+ J% w  b
                actionGroup = new ActionGroupImpl(aZone);! b7 R6 x# G8 {5 X( o
                schedule = new ScheduleImpl(aZone);4 F3 Y2 |* Q6 e: o2 v
                try {
5 P' n5 V" B, y, K: V) G                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
) g4 H, L6 j+ V: p% W1 S                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 Q0 T- |  p6 Z5 e/ L6 _. y, E4 [  u5 s
                        % f  ~( C4 \& ?* F& z& {- f
                        actionGroup.createActionForEach$message(list, agentSel);) U+ k8 Q  [1 ~# Y7 ^$ C
                        actionGroup.createActionTo$message(this, swarmSel);% J4 m5 Q( U  p: y$ X& s/ I# f& m
                        schedule.at$createAction(0, actionGroup);& Y. r9 p4 V; W6 ~7 X. o3 Y
                        schedule.at$createAction(1, actionGroup);2 P' m# k5 D) m1 @/ }- l. |4 G& p
                        schedule.at$createAction(2, actionGroup);
7 O9 B0 i1 ?" `; s+ q
0 Z; F/ Z( A  A& a                } catch (Exception e) {
# u; u: y1 V+ V( M6 p/ S8 l4 w                        e.printStackTrace(System.err);
  \/ ~8 p2 V+ Z2 M* W" W8 [                        //System.out.println(e);
7 j/ p- X& y9 B  ~* ^, E                        System.exit(1);
+ X7 Z$ c. I4 c( R# ?" U3 S3 B                }
3 |: M" S: h5 O+ V" k0 P0 \1 I! d4 A1 ?9 T" H
. `2 j) Q3 o" _* j( I$ G
        }
5 d' p! [9 s' R1 o# Y' ?1 g" q* m, w7 u0 d) `7 |( Z# g2 R8 e2 K: c
        private void swarmSetp() {/ P  s% l1 f) s* [
                list.addLast(new Agent(Id));3 f% I  m) L0 q  x7 }
                Id++;* z. [6 G& j. y
        }' l( Q3 t: Y* f3 j$ ^3 \# p, h

5 A0 {# q- N8 @5 E7 J+ U        public Activity activateIn(Swarm context) {0 N9 p9 i3 A* _) S1 l& N
                super.activateIn(context);
. k6 a6 Y9 r/ f$ @5 ]# t                schedule.activateIn(this);
! f- C$ |2 _+ I5 D                return getActivity();9 g- _  }9 ~+ B, ^3 q8 L% D
        }
& ^7 j( o( ^3 j7 v" w
, v) @3 i4 K6 @        public static void main(String[] args) {; R7 q; E$ c: h" E  U. g3 _
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 e8 V. M8 @/ \% J
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 O* S& V) v4 J' P& i6 P* t- D
                swarms.buildObjects();6 X( K5 K( O, p, v! O+ @& C
                swarms.buildActions();6 j" `, f. S" [- h$ l; _
                swarms.activateIn(null).run();0 O9 ~- V0 s8 h+ b% g
        }
/ b& }" w4 E! E6 _
8 u) ?* r. R: Y. l% K" E}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-23 22:15 , Processed in 0.015781 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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