设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10106|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( T  k* U: Y) k! j) t9 n
1 r2 u# }! ]( A& o本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* n1 J! Z, J" s) |+ t5 b/ ]: |
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: w1 }- V( G  Qswarm.SignatureNotFoundException
# e0 E2 Y) F; Y' _        at swarm.Selector.<init>(Selector.java:76); q; ~4 X8 G5 [
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 _1 I) W; j& A; I        at ActionGroupDemo.main(ActionGroupDemo.java:67)2 \. W$ y2 I9 }6 ?- s1 I# n+ C. Z4 ^

4 j6 h) h- z3 ~$ B( Q4 V5 R: B4 O7 C$ s" h5 n5 o( W5 J0 |
import swarm.objectbase.SwarmImpl;
% V" a/ R$ z3 l2 dimport swarm.objectbase.Swarm;8 t% c! h" T* W
import swarm.activity.ScheduleImpl;
* [- [# r! ^) a5 h- S2 {0 b3 p$ Yimport swarm.activity.Activity;
+ U& M7 q: U$ Q' H6 L" w" fimport swarm.activity.ActionGroupImpl;
: W# W+ r+ l) ^8 @import swarm.collections.ListImpl;
. ^2 x! ~; U% j( T' a4 }& U0 rimport swarm.defobj.Zone; 9 l" o4 W# I, K. c* q6 b+ p
import swarm.Globals;' |6 T3 E! }2 o' Z) Z: X
import swarm.Selector;! ?3 |* w3 A% k
import swarm.activity.ActionGroup; 1 H: N* u8 v8 H' v0 D
class Agent {
4 S2 U0 O! {: l        char id;& K" g$ h' d3 l8 z2 a4 Q5 a

  y3 {5 J) W/ |. y$ ^, @        Agent(char id) {
5 n7 {$ e# M; o1 b: l3 {; Q                this.id = id;$ e: u3 E: M+ X' R" n9 K. ^. T
        }! b1 c6 n6 O% r* l6 g% J* z+ ^

$ z! [( b3 a, K) ~+ J. t+ m0 I        public void agentStep() {1 Z- p3 e0 _4 ]3 P9 s9 q1 W
                System.out.println(id + ":" + Globals.env.getCurrentTime());
/ d7 J# u9 b( p        }
# q" i2 [5 N$ H$ ?, W4 B}. u7 N7 m. g' [

0 A  P* A! b5 }0 z9 w8 \$ d4 ?public class ActionGroupDemo extends SwarmImpl {
# e3 L! o4 b8 t        ScheduleImpl schedule;
' X& e% t, X; \4 ?; I        ActionGroupImpl actionGroup;
/ h: `3 F$ [# z( ]        ListImpl list;' j: X8 @, ~& ~: o( d9 F
        char Id = 'a';
0 P* J( a  X5 t0 h. ^" O. S
, a) R! V- ?6 }9 ~2 e/ L        ActionGroupDemo(Zone aZone) {
4 `, |' x2 m" `" u$ {) P                super(aZone);
- r4 o) m4 C2 @* I  y9 T                list = new ListImpl(aZone);
$ Q. D2 K; b% m1 t: P                swarmSetp();+ i1 q0 }: E) w: W
                actionGroup = new ActionGroupImpl(aZone);; Y- H" n8 k" E4 W0 Z( y
                schedule = new ScheduleImpl(aZone);
) ~' h0 |+ Z5 l1 o                try {7 s8 W5 x, y! `) I5 E
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 U! }/ F6 u$ J' e* G                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) s2 a$ d1 T0 J, K                        
7 h$ K- i# Y/ F% ^. ?                        actionGroup.createActionForEach$message(list, agentSel);8 _9 G" Z9 Y9 c
                        actionGroup.createActionTo$message(this, swarmSel);' L1 b' J) N1 W, I7 r
                        schedule.at$createAction(0, actionGroup);: t- z$ c- G$ |3 g7 g+ j( \
                        schedule.at$createAction(1, actionGroup);
! s) y$ ~; j$ U# C# r                        schedule.at$createAction(2, actionGroup);
$ b& s1 l' Q! _7 S0 b' b3 r
8 J( u( }) d; I# v                } catch (Exception e) {; C* A+ o/ c, ~5 S# X) j+ D
                        e.printStackTrace(System.err);2 s: m9 p4 n; q3 t4 c" ^6 @, y
                        //System.out.println(e);
3 k; }6 m9 Q5 [' T( j                        System.exit(1);) `6 W! E9 i6 o7 f3 p; V( p
                }: k; Z" `' E3 ~, m

; S% O0 r, K( s- x  t* |0 ^: q( u; w, e# U" `- r5 B% ?! b
        }# O& X/ W5 h* l4 `) t- `

) o2 v* r( i& E: Z) j/ m! o        private void swarmSetp() {! x3 R/ j! C" v' A  d- M5 i$ t& n
                list.addLast(new Agent(Id));- o" W" M% D8 T7 S
                Id++;+ R5 Y. A$ Z9 x  C
        }
  D5 G5 k& t. P: W& I7 y# f- }* q! K. C& J$ [; T
        public Activity activateIn(Swarm context) {- k1 B9 n! k7 j3 {
                super.activateIn(context);7 w. N0 U0 c) ?$ J
                schedule.activateIn(this);0 D! ?$ X8 Y# q: Q
                return getActivity();: N4 v. Z; N3 k$ Q7 a0 K- R& P% E, G; q" b
        }) V; i' G+ x2 ]6 ~7 g

" @$ M& x/ L/ v5 k6 ?- Q& W$ P        public static void main(String[] args) {
5 Q# l& h+ X2 O( J. I                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 n$ \5 M: r$ G7 n$ h
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 j% e' D) y# u) Y3 \4 D, N                swarms.buildObjects();) ?1 m7 H. p: c2 T
                swarms.buildActions();0 O3 |/ x# t( Y* y
                swarms.activateIn(null).run();
$ A$ S2 C0 d/ _7 Q. P% E. r        }
3 N9 x. \7 D6 G% R6 l
' r( k3 X. m+ I/ r) G3 K}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-3 23:40 , Processed in 0.015305 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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