设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7465|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 s- Q, Z( S# b7 O0 C: P4 X

* p4 L* V$ f3 q) x8 y) w7 d* S* U- R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" ~9 |5 S) S5 i2 V
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., D4 K9 E1 D; @
swarm.SignatureNotFoundException! V, h4 q1 K* o# ]% e
        at swarm.Selector.<init>(Selector.java:76)
4 {2 F8 ?4 p. J. L8 g/ a4 j6 M2 U( E3 p        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! v- s5 A/ \9 I$ }, @* L2 k' v$ y
        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 ^6 M! G1 |  t: y( a& S* p
/ u' l* ]* y3 G+ z# i; U% W

2 p$ \5 W* m5 ^9 I. ?8 simport swarm.objectbase.SwarmImpl;
3 i/ R- e, d0 Q, Q% bimport swarm.objectbase.Swarm;& t# ^3 b* }. u% z+ {7 B- E
import swarm.activity.ScheduleImpl;
' I6 J6 y* e7 e4 f+ |import swarm.activity.Activity;% p7 z7 \; }8 E4 v6 \
import swarm.activity.ActionGroupImpl;: g8 {, m: J! r  d- Q0 T' ~8 z+ Z/ `
import swarm.collections.ListImpl;  E+ K9 F1 T! \' b+ o, \& N0 J/ D
import swarm.defobj.Zone;
8 s! L# E2 X: _" [2 R8 ]1 dimport swarm.Globals;7 [2 P% r' i+ P' ]6 \9 @- [' R
import swarm.Selector;
' s, y+ E' `; ~9 jimport swarm.activity.ActionGroup; ! g% J5 f% l, ~" {# ~
class Agent {
0 K2 u! {  l$ Q6 y        char id;# }4 G& e1 r, ^' R7 ^
& p- q, X5 g% L/ N/ P4 X( h
        Agent(char id) {0 w' T0 }* w- B
                this.id = id;0 [* c" }* r1 L( y) ^' ~, X7 v
        }. B7 [, I( b$ B/ Z! i( h, {' ?, G

7 Q! Y8 s1 ^; T- f( Q        public void agentStep() {0 Y0 T$ J! P& R+ K, E  p. t2 Y3 X, C. K. U
                System.out.println(id + ":" + Globals.env.getCurrentTime());
( w6 l" `# K7 m        }( L* Q+ x, ^" E- U: D1 i
}# k% y; I( z0 o) g  N
3 U8 n$ C& Y  N: x8 x# [. k
public class ActionGroupDemo extends SwarmImpl {
& d' o' `) [5 X, E  Y+ O        ScheduleImpl schedule;
* v1 U( h- S, i3 N) a" f; ~! s+ f        ActionGroupImpl actionGroup;
; x" s! t2 T) r4 ^4 L  |# k! e        ListImpl list;
1 ^9 \6 ~/ @1 @# u7 d8 R. X        char Id = 'a';
. u2 F: n& k3 a  |- R9 y  e3 H
- g0 M" ~; k  y! `        ActionGroupDemo(Zone aZone) {
8 `; T3 D3 e, J- N. l2 A" N& s" S  p                super(aZone);
7 I2 [, z3 {. }/ M9 o4 }                list = new ListImpl(aZone);
5 J4 w7 X/ r8 D" Q: z                swarmSetp();
. h2 U* Z9 E& |. I: c                actionGroup = new ActionGroupImpl(aZone);( A( `% f9 U: Z- a) d3 G$ O, F
                schedule = new ScheduleImpl(aZone);+ c1 m* p. w% Z2 k* @
                try {
, o  c- o# q0 _2 A" ^                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
; l1 e, V" @( ^! A  {0 Z% ~                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( D6 u: S' D3 L3 ^+ c! D% u* \: L
                        $ J; u2 s( m$ j" W7 \8 a
                        actionGroup.createActionForEach$message(list, agentSel);
; L# Q$ k+ ~$ {9 f* i$ e                        actionGroup.createActionTo$message(this, swarmSel);; m' J; Q7 Z9 v  x) B' M+ s( h8 ]
                        schedule.at$createAction(0, actionGroup);% J7 o8 A* r# H8 n7 y9 n7 S
                        schedule.at$createAction(1, actionGroup);
4 \, m5 `  `" n1 E. W                        schedule.at$createAction(2, actionGroup);
6 p7 M/ d! f: h, W1 g- f
* K% A. Q0 r# {. e6 u5 ~4 l( ]                } catch (Exception e) {% o1 k8 S5 Y: M2 N
                        e.printStackTrace(System.err);! Z2 R5 Z$ ^6 e0 t' k5 M+ a
                        //System.out.println(e);
1 l1 u: `( E* q/ D; d6 m  f' L* c                        System.exit(1);
8 L; F% \, {: i7 Y                }
# N$ R3 t  j9 n, x4 J9 R, f) T. f( T
; ~( a) W7 e; r' _2 P7 |; [
        }- z6 j0 Y: p: D* V3 i1 u% }
4 q: A* L+ O, `* h
        private void swarmSetp() {
/ s$ Z" i& f: {3 y) p                list.addLast(new Agent(Id));
$ p1 h9 ^; X2 h. o                Id++;
1 o- V# o( a" n0 Z1 e        }0 F1 g( s  f, D
( l3 Q; ]7 e9 A! ?
        public Activity activateIn(Swarm context) {' I' G3 F$ r/ w6 S
                super.activateIn(context);
0 i" t+ k3 Y- \+ K/ S" b  D                schedule.activateIn(this);
7 {( q1 ]4 ~, f0 q  r# @- u                return getActivity();. |6 n& ^* n" j! t7 z
        }
( k6 B0 D* q: [- q  n3 |9 ?5 M' u. L' F& m- j. V6 Y
        public static void main(String[] args) {
- W; ~9 O  V7 S+ M                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( r! r9 |5 K7 E# k
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( t' x8 E7 I% `1 ^
                swarms.buildObjects();  s; l% i/ b" {# }
                swarms.buildActions();
" \1 q8 I7 @. i  u7 ^& ]; ~                swarms.activateIn(null).run();* u: X. p" l& }1 j. s
        }
: h8 l8 `3 v5 H) n; i. m* R) y0 V( [6 m* M
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-3 17:27 , Processed in 0.018043 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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