设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9012|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 S( v) R3 I! Z+ k% X4 _9 ~  `2 _, R
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& v0 @2 W. t; V
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 R! \8 D3 x: g6 s
swarm.SignatureNotFoundException. {9 {* Z/ `$ f6 ?' _& o; N; R5 Z
        at swarm.Selector.<init>(Selector.java:76)8 y* K4 ~. _4 J6 R* m' z9 C
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 t. L- F& z7 I  S! ^4 G        at ActionGroupDemo.main(ActionGroupDemo.java:67)- H  X7 v. }# L# L
1 e% f! q& _% U8 |

4 ~) D* a& z+ ^" Pimport swarm.objectbase.SwarmImpl;* d* i4 f$ ]3 p8 F5 X
import swarm.objectbase.Swarm;( @6 G7 M* |, Q% Z# U
import swarm.activity.ScheduleImpl;
( k. I/ m6 x6 z' F8 g) Qimport swarm.activity.Activity;9 g/ G$ l' w9 ~" c4 L
import swarm.activity.ActionGroupImpl;2 |* p, h' w* H0 N% y
import swarm.collections.ListImpl;
! R* O" Z0 C0 n  ?: wimport swarm.defobj.Zone;
0 c+ a9 }9 C' k8 h" g4 Y) Dimport swarm.Globals;3 U7 Y9 r! `8 }( `, }* ^6 ?7 }
import swarm.Selector;
& j, _& A' {0 n! z; t+ C, G0 cimport swarm.activity.ActionGroup; 1 l" M( d9 B& G1 }- J9 w: s$ G4 v
class Agent {6 m. j/ }6 A( B8 J% b2 j6 V+ w5 E9 j% d
        char id;/ f& m/ D, M& i1 o$ n

: F1 {7 J8 ^( c$ N  I! t        Agent(char id) {; K( j) L$ u% w5 b( a
                this.id = id;, A! w2 R; |9 m) [6 \4 }$ x
        }! {8 i* r" U/ w2 V9 Z0 D
; b6 n. u+ o3 y* G
        public void agentStep() {$ ]. O( ~! t8 M3 V- j
                System.out.println(id + ":" + Globals.env.getCurrentTime());9 V) _* b* J& X; b( y
        }
( w! Z1 ~1 Y, f* T) K}
* O) N) v7 b& ]
) R9 {2 B! Z/ }0 o0 t8 I; L0 epublic class ActionGroupDemo extends SwarmImpl {
8 S; ]8 _5 C- {4 m. M0 e        ScheduleImpl schedule;
8 m, w' ~8 a" X2 L        ActionGroupImpl actionGroup;
& o# e- r) c& `, a        ListImpl list;0 r6 J0 p; E& P4 _
        char Id = 'a';
8 R  B5 i) ~& P! j, z
8 y* h2 Q* A2 ?0 @. K2 A        ActionGroupDemo(Zone aZone) {
) w9 K- x1 T% f. Y                super(aZone);
8 ~6 T9 r7 K' Y( b% d& d                list = new ListImpl(aZone);3 b" t, D+ C0 @, z( F! }
                swarmSetp();% l: D/ S1 }$ v: ^6 w
                actionGroup = new ActionGroupImpl(aZone);1 Y6 t9 u* d9 n7 }/ d0 q% j
                schedule = new ScheduleImpl(aZone);  x- |; A, J# T0 r. x
                try {* b' a/ x" m! @2 j) G' O
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);$ O4 j: D! u8 ~; e' N' _7 y
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* h# U% [. X0 T- w3 a
                        
3 F& g5 P) D8 h# _                        actionGroup.createActionForEach$message(list, agentSel);1 L* x: S* i) M$ s( T5 d3 }6 g
                        actionGroup.createActionTo$message(this, swarmSel);: t! F" h0 O" P
                        schedule.at$createAction(0, actionGroup);
6 L) n& p4 l) v                        schedule.at$createAction(1, actionGroup);
& |+ s, [$ i7 [6 u- k# \, u                        schedule.at$createAction(2, actionGroup);
. r8 u2 c! `5 H- ]" ~( `! k) A* v0 M
* b/ J4 V$ o- T8 B; k2 @                } catch (Exception e) {
' d7 }! a3 U6 k+ @) a                        e.printStackTrace(System.err);. {4 C8 Q+ U  q& A8 |5 \$ a9 |9 _) Z
                        //System.out.println(e);
+ D* ^/ T  w  z/ T                        System.exit(1);0 e- P/ s4 \" f$ l4 b
                }
! d0 b- s2 H/ P
/ j# \0 k3 f* t) \6 ~1 j
8 N: z/ R& c, ]# x: e        }
, C& t& W7 d$ `% E: g2 V% s2 W, n% g" ]0 z4 Z: [
        private void swarmSetp() {- b# }* d- O4 V0 V2 I" M
                list.addLast(new Agent(Id));! o& X: V. p1 k# }
                Id++;
7 X5 m' S) y5 y: l8 w# ?4 }        }+ m& ~, m' W- t/ ]  ?
# P3 ^& E, ~; b. V
        public Activity activateIn(Swarm context) {# F8 L  g, Y3 \5 s8 A( `  V
                super.activateIn(context);8 C, B2 a, k1 c% E1 `+ K0 o; i/ w
                schedule.activateIn(this);
% V1 ^6 y8 A5 {( c" x& A% @6 b& K% M" m                return getActivity();
5 I: P- F8 o+ I/ J5 h        }
: ^2 O' E7 o! G& r3 ^; x
. M# \- T" w( J& T- `5 n" E        public static void main(String[] args) {  J+ C( j2 w" M" J$ }5 C
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ K6 n( |* ?( `* E: t/ [                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* [# w: ]: N+ F8 C  h                swarms.buildObjects();, G; R- f2 X  k3 f4 H, _4 M
                swarms.buildActions();5 q5 {& L$ A4 W8 T4 O# p) r. X
                swarms.activateIn(null).run();4 A( l. h7 h- l- \: M
        }" S# R5 r3 E2 I- N# }! ~
7 b  {1 p/ x/ Z0 K3 w
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-29 02:37 , Processed in 0.022786 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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