设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7706|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 n8 `/ B6 w- |+ u1 p2 x% |5 a9 Z' A+ A. `& H
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% [9 v. l* ]. _& o! h
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* b6 a: ~) _" [) e1 Y" _
swarm.SignatureNotFoundException
+ G( s- }$ X! _/ ?! |  g+ b        at swarm.Selector.<init>(Selector.java:76)
) t; ^5 A4 T  O0 s  r0 V        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. M" z- ^. x) _! p: m        at ActionGroupDemo.main(ActionGroupDemo.java:67), K- L% H0 ]5 K

+ O& v% i) x5 [! O7 y( ^; L1 r& a1 ]& R+ W8 [1 ~$ Z
import swarm.objectbase.SwarmImpl;& G9 K1 V* F" h" D9 \/ y
import swarm.objectbase.Swarm;% @% F& Q1 s' o2 I2 X; F
import swarm.activity.ScheduleImpl;7 ^5 T$ z$ d, K& T3 f: A" Z) |% t
import swarm.activity.Activity;& ?. B  ~' `  c% A6 V8 C7 W9 _
import swarm.activity.ActionGroupImpl;
" U% H, H  B& J/ G0 n8 Mimport swarm.collections.ListImpl;
; K1 N$ L! B8 h1 ~* m+ o1 b8 Oimport swarm.defobj.Zone; , I/ ], l. }0 |9 N, X6 |- V
import swarm.Globals;
/ t4 D7 E% N3 E4 C8 f9 ^7 k% Mimport swarm.Selector;: {# C4 K. O+ g% \2 ]
import swarm.activity.ActionGroup;
: f, L& f9 |" [' mclass Agent {6 E) s" P% {; _: G* v& v  x+ ]6 d7 V2 F7 B
        char id;
9 g# c7 w3 {& D* L) F- X3 x3 L! k% Y& h  `# I2 n3 q& D
        Agent(char id) {$ g/ d7 B! j' Z$ L7 w5 I
                this.id = id;! p3 u9 ]/ }% x6 |( B6 b3 N  a$ M3 a
        }6 C, ^+ F" o8 e4 |8 u
; d# y% Q9 R+ m5 \( L6 N
        public void agentStep() {# J( }# m! M6 U7 M* s
                System.out.println(id + ":" + Globals.env.getCurrentTime());
( T7 h+ g6 Z* T) j; R        }* [7 K! N+ w+ @3 P9 E6 v# P
}& D/ X8 z1 i' w( G

' i) R- ~/ Q5 Ipublic class ActionGroupDemo extends SwarmImpl {0 N# ^* ~7 }( ]
        ScheduleImpl schedule;
/ F% x' w) U4 B0 b7 y        ActionGroupImpl actionGroup;8 A1 }" b" R" I9 |
        ListImpl list;9 u5 B2 k8 W6 k! {
        char Id = 'a';
3 [+ q% @3 \# c( W" Y4 p, |* w- V  n
        ActionGroupDemo(Zone aZone) {
) S8 L& n" b3 Q                super(aZone);
4 r0 W9 c, e% B2 R( b9 b                list = new ListImpl(aZone);
: g$ l7 V4 H! X2 T7 N  T* |8 z9 B                swarmSetp();, r. ~6 F2 p0 r1 t9 F
                actionGroup = new ActionGroupImpl(aZone);1 A7 g  N$ h! M( q& g6 n
                schedule = new ScheduleImpl(aZone);
9 x7 n3 k4 B# j- v( J# q                try {
( N/ Y4 p, L4 w7 i% b5 Y- p                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 q- D& a+ i8 G' L  P
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( u4 {& L' I- I5 t* W
                        
1 }/ M7 @2 q5 l0 d                        actionGroup.createActionForEach$message(list, agentSel);0 m: A$ M+ E" W  i0 N: N
                        actionGroup.createActionTo$message(this, swarmSel);+ c& P/ W9 V) D
                        schedule.at$createAction(0, actionGroup);; x$ N0 I, }" i: ?7 U. |
                        schedule.at$createAction(1, actionGroup);  _1 ?- j  p% q1 E
                        schedule.at$createAction(2, actionGroup);  v: L2 n4 @7 w  v9 }3 a: E

' E' G3 M5 P/ N7 I% ]+ w                } catch (Exception e) {
, F% o6 |! }/ D# i7 |. m" |                        e.printStackTrace(System.err);
1 ^* v6 f: J- M* A& G                        //System.out.println(e);
' i2 W( a2 ?: d4 ?* N1 W5 J  O" o  X                        System.exit(1);
- x% d3 K8 d& W                }. w. e0 [; r. S( y+ a

% H( K8 `0 \  c$ o/ R" N6 ?: j& {
        }
% @8 j. m6 a- v0 R; n7 X+ I- v5 ]- j8 v( _4 `8 Y6 [, B
        private void swarmSetp() {
0 u, `: V7 W3 u                list.addLast(new Agent(Id));
8 h: i; X5 S  g. _                Id++;
! Q: G, F5 _- r; i3 E/ g        }
# D  _  ^" t- |1 b+ r$ N5 o! K- P3 t- Q8 ]; H
        public Activity activateIn(Swarm context) {
' d2 U& |$ P8 l. G6 J                super.activateIn(context);
1 L# i! B5 @) r- M6 v! p                schedule.activateIn(this);
7 Z0 O$ r* V! E* @2 u2 w                return getActivity();/ t+ Q  r1 ^* a. i' V
        }+ N: E4 Q$ b$ M& Q7 u
1 }$ l" k1 q2 D! t. U
        public static void main(String[] args) {+ t( `: S0 l! Z& E$ M$ K, t
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( K$ w/ Z9 _# g3 V8 Y0 @- ^9 l
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ o' y  s/ C" V: ?. O6 v
                swarms.buildObjects();
9 A! S- K; [# \  s1 P6 q6 N  H                swarms.buildActions();/ @  E. N% v. C8 F5 s+ z2 ~
                swarms.activateIn(null).run();
' j! f: P8 f: q# c9 Y& ~* X- e" \" E        }6 S8 V/ E1 D4 E: x! K
! o# \; i9 b) V1 {& d6 u5 D# B; ^
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-12 02:52 , Processed in 0.018006 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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