设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9979|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 P+ @; w; m( [% W3 p5 l4 \! Z! E5 o8 g5 R
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' n5 o& [% d1 e: L8 ~0 E
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 F! f5 V- {* ]* c7 V
swarm.SignatureNotFoundException/ J! t5 i1 H3 K  M0 s
        at swarm.Selector.<init>(Selector.java:76)
/ b8 s$ h9 U; G9 U$ H7 X) P, \5 _8 e        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  H% h, \. g( e# ?( k; _" k% a* A$ i& u
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
; [0 ^. w  a* |* A0 a2 o6 @9 l. D' O! z& t% a- r
8 T; t! }& S6 V+ ?; E, a" Q
import swarm.objectbase.SwarmImpl;8 W% a) ]- J3 L
import swarm.objectbase.Swarm;9 J% P, ?8 I+ Y
import swarm.activity.ScheduleImpl;( N: E$ N0 y9 f  c9 H; k  `& H
import swarm.activity.Activity;, ~( V# m* T3 e# f, E- J
import swarm.activity.ActionGroupImpl;4 S9 Q: w9 @/ ~, ?- G% [: i
import swarm.collections.ListImpl;9 `7 G+ M# A5 n1 V  ^: M
import swarm.defobj.Zone; , o1 e5 L6 V( @* N6 U
import swarm.Globals;. j3 h$ {( G; l% H
import swarm.Selector;, |/ V4 [3 C+ W: j
import swarm.activity.ActionGroup; 6 U3 V% f  h; }) I- r
class Agent {
3 n) p! i1 U3 X- C7 Z( H+ R        char id;6 m" Y+ D$ Y, Z6 u/ ?* U

, Q6 G/ F7 `* o6 b  ^6 Y5 P        Agent(char id) {
1 E2 Z6 Z) y: z* r* F: u( |                this.id = id;" y4 g1 y, ^% d  r$ q
        }
3 Q7 V" S1 K" f: ~5 z* u5 N
# r" k. ^/ |, ^9 p# l' ?9 {, _        public void agentStep() {" ]7 C0 M" h& c" T' L
                System.out.println(id + ":" + Globals.env.getCurrentTime());9 P( r4 p3 C1 y& j
        }8 n8 p2 B: T6 m4 u9 U1 e, J" M! |6 ?
}1 F- G- |- u, }& r) Q* ^! r* o

* _. s% P9 O# j2 }4 X7 k+ `) l+ J* Mpublic class ActionGroupDemo extends SwarmImpl {4 h: K! l" h2 F' J2 T
        ScheduleImpl schedule;- \2 C5 V7 u; j. N2 ^
        ActionGroupImpl actionGroup;% X1 Y7 F) E5 N) s' u/ s# U$ ^
        ListImpl list;
3 q1 h' o9 Y) V: L  r/ }        char Id = 'a';& @) N' J( @5 f0 B; @- U
0 b% `7 _/ q0 H9 s. D6 z5 N
        ActionGroupDemo(Zone aZone) {* I; F- S! q% E7 Q/ M& A% `
                super(aZone);2 f8 ?+ I" Q% D2 `
                list = new ListImpl(aZone);( H; c& [3 C3 P, t' f. K
                swarmSetp();. ?# C4 j, L  H" H' a7 p  I
                actionGroup = new ActionGroupImpl(aZone);
4 V0 N" |  w$ s( c% ^                schedule = new ScheduleImpl(aZone);
5 B2 N& l6 `/ X% K2 F                try {
/ o# k9 K5 s$ b7 Y$ R$ `                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
- I2 Q: f, \9 J8 l1 h$ G                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% R$ ~' ?! @. K4 n
                        
! t) Z/ x. E! z( x                        actionGroup.createActionForEach$message(list, agentSel);
/ ^" v+ N0 O: d/ X" V- l+ s$ m                        actionGroup.createActionTo$message(this, swarmSel);
( L, c: G  T. k                        schedule.at$createAction(0, actionGroup);
7 p' h9 F1 j7 E- B                        schedule.at$createAction(1, actionGroup);
) Z. {' g) a; D8 D                        schedule.at$createAction(2, actionGroup);
  z8 Y! i' q7 ?+ F( p& Y8 b6 k. X5 b, e7 r" p$ ?8 k
                } catch (Exception e) {
% k' e6 }* L1 B8 ~$ R& a                        e.printStackTrace(System.err);+ e% a) H5 t* Y7 s% x2 ^
                        //System.out.println(e);
* o9 Y! b- w' N; p4 C6 s1 A/ i                        System.exit(1);3 A8 u7 w( h' ]4 \- Q2 ?
                }
' g  Y- ~' `& p7 w$ \# K" }7 l3 U2 p: v3 f! z+ F
; m1 ?" t+ ^, I4 J; @) e0 s
        }! ^: @3 y. _* w
) [1 m- `/ z0 S% a
        private void swarmSetp() {
! I5 Y1 k3 I. S0 B3 p( c* d                list.addLast(new Agent(Id));! o5 ?% ~% x: _( }" C6 Q$ H+ y- Q
                Id++;' e) w  ]" u3 ]3 h- d
        }2 \) ]8 h+ P5 b9 F

: A! v( X  Y* R9 z' ^3 r        public Activity activateIn(Swarm context) {
4 K7 V' ?7 Q# t8 C1 O- r, v; C                super.activateIn(context);
4 _. U& |0 }4 Z! K7 U- Y# v( k% t                schedule.activateIn(this);/ E, {- f1 o" \2 q  w
                return getActivity();
+ q4 @% g5 v4 K& B) K! n# z& R, B- V        }
9 i, t# g( n5 Q" h( O5 G
+ ]8 Y" ~: F; t- J$ n/ L; x7 ~. I        public static void main(String[] args) {
9 w8 \4 |8 t+ H2 a5 g                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 |: |$ {: ^6 P2 W                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" {; Y/ `7 j3 C3 T& c* t                swarms.buildObjects();0 ^: h+ ]/ X* s7 D+ d' T; j3 e
                swarms.buildActions();
7 J6 C' u* M3 D  z3 Y: Q                swarms.activateIn(null).run();+ C8 |6 U+ p2 T% z( y& ~' I
        }) h* z# c; J, \4 B6 c, i
. I8 @4 ^! w; `  j! v: v
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-30 08:09 , Processed in 0.018124 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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