设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5079|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 f7 O7 g  N/ d2 s' G

. i: M3 N) u) p5 o7 F本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 r2 F, S5 n; N' D- I3 X以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& s. _' I) `; \5 A% y6 X6 u: X9 _4 d! B
swarm.SignatureNotFoundException
! `# x' v( K2 V        at swarm.Selector.<init>(Selector.java:76)
/ F; W5 u7 C3 B6 m        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 V- S9 h0 I1 ~( F: u. _; q
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
, \' `, F/ Y' e8 l
0 l! `; q/ }- G( n) B3 z& \4 n( k5 d( M
import swarm.objectbase.SwarmImpl;
# h  Z+ C0 U, {3 G' f  simport swarm.objectbase.Swarm;9 t' O: I4 a1 e0 E
import swarm.activity.ScheduleImpl;' o) m8 T+ q- a
import swarm.activity.Activity;
- k# w9 f- L# c9 ^  d; jimport swarm.activity.ActionGroupImpl;
- _' L+ u; p+ g! Wimport swarm.collections.ListImpl;( T$ w9 Q- T8 T( X8 `
import swarm.defobj.Zone;
+ z3 z8 @" A; ~, l0 |8 k  Aimport swarm.Globals;
# e& x4 I, n5 i) Kimport swarm.Selector;
+ F# Q0 L* f& C3 v  h7 B2 N, Wimport swarm.activity.ActionGroup; ! u( ?5 \. }: J0 P$ B
class Agent {
5 n) l8 U) G1 y4 v        char id;
# q& u; ]4 a6 C+ G  B) I
, ^: q6 S4 h1 p# G        Agent(char id) {8 Z2 ^# c+ s# u) b3 v; C
                this.id = id;! G" ~' x. Y# Q. j# l
        }
7 Z+ Y: a0 u' _- T2 T6 |1 B* L4 r8 S" _8 a" k& y
        public void agentStep() {  H3 X) K! T& _4 k( V/ k
                System.out.println(id + ":" + Globals.env.getCurrentTime());" e& K  X- ]2 O1 x
        }* A1 h/ [7 ?0 q* x: B
}
8 V3 X7 s5 _7 U1 [' s5 ~* A: N% R
; H: t  g% @+ w$ n& Kpublic class ActionGroupDemo extends SwarmImpl {
" B& l' D( }! P1 K: j4 a        ScheduleImpl schedule;
& y% b$ K- ]9 g        ActionGroupImpl actionGroup;
& V' \, b% p0 b' G, i! p3 t        ListImpl list;# ?( _. V' I# R, x, g
        char Id = 'a';7 x& j( J& R( ~* M: j/ C
0 m$ e' b  d$ x6 y: [  c1 ?
        ActionGroupDemo(Zone aZone) {/ o( E" g) F+ S8 S2 w, a
                super(aZone);% z' X% }! p/ x
                list = new ListImpl(aZone);" P+ S; d5 @% p, Z
                swarmSetp();
3 @  C! f; K% F7 A                actionGroup = new ActionGroupImpl(aZone);; d* v% l" S1 P  @. Y
                schedule = new ScheduleImpl(aZone);
  E* }) |2 e0 B! A8 r                try {
) f1 y4 }( z$ y* A$ J. ^4 O                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 h- L1 }% F* Q                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& t$ Q9 b) P  C7 `                        
/ A* ^" o( O5 d6 c+ }                        actionGroup.createActionForEach$message(list, agentSel);/ n& [, z' R3 O& g
                        actionGroup.createActionTo$message(this, swarmSel);& j; d7 ]3 a, @" y3 [/ {1 v3 t9 D
                        schedule.at$createAction(0, actionGroup);
2 ~/ ~7 R+ s# z* n                        schedule.at$createAction(1, actionGroup);" K% q) `; m: m( ]7 t7 C& ?; `2 f$ m
                        schedule.at$createAction(2, actionGroup);6 I2 z9 _4 Z$ y, {: R, t
) I; A" C1 I3 U
                } catch (Exception e) {- g: D' u* F5 k* G8 G+ |$ [( G
                        e.printStackTrace(System.err);
; \4 P! i. R; ]7 x( d$ p1 D( \                        //System.out.println(e);$ \* T, a# R, d% u& e# R# f# u7 |
                        System.exit(1);4 V6 j  ~5 D) G3 T# c. u, X
                }* P' h' c& z2 h, z- y5 K% J; t$ A7 R

; K: T" W% _4 h* B# C8 O( [1 i. v4 T$ L
        }
' Z# |! b  M% H+ n$ ^  Z6 g) Y" G3 ?& j- r7 E$ U8 N6 e# W
        private void swarmSetp() {$ y2 W1 m  @1 {' i" q9 F
                list.addLast(new Agent(Id));! x9 k- o! b) k7 G* R( s
                Id++;! h, w; L" |2 F* ~# r# d# p0 A
        }
* {5 j. `0 f& a7 O
- \. F3 X$ k. O" \+ D        public Activity activateIn(Swarm context) {6 E+ D: x' j( k- E) d
                super.activateIn(context);
. w: x# t8 u" x5 h% ?                schedule.activateIn(this);
) k4 T8 L' F3 E5 ~                return getActivity();
" z. U7 m5 t, Z$ |+ @3 n: G        }3 e: ?, @4 _0 J8 Q" X

, ^7 G' O) R: d8 C& D: r8 L        public static void main(String[] args) {0 X' e# y8 |9 A6 U7 Z
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; k% i: u8 v/ x  w' b" B, C: U7 s5 s! B                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( @6 Q6 k2 h$ k1 a) F/ c
                swarms.buildObjects();
  ^! U6 r) Y# d  M, v. ^                swarms.buildActions();
9 r( P, W; a5 I7 f8 P/ {                swarms.activateIn(null).run();4 Q1 l  `% E" i
        }7 P' f) r% O" ], \6 f/ N
" e' x, k! H# h2 Q! W
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-24 05:35 , Processed in 0.019447 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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