设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4487|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ `) p) q% h0 B2 w
& {' j# H- o6 S1 J* |8 a( h6 o本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 |2 z9 |- Z: ?0 _3 {以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., x/ J, K( O6 p
swarm.SignatureNotFoundException
  M$ E" i' E  I        at swarm.Selector.<init>(Selector.java:76)# s  {8 H8 Q' ?4 X4 F. ~9 @
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( |, Z% w6 N- \1 ~5 V        at ActionGroupDemo.main(ActionGroupDemo.java:67)8 X  H  p) R7 R0 q7 \% m
5 g7 Y  I& v/ L7 n+ B: w
- Y) h3 z( v( n
import swarm.objectbase.SwarmImpl;4 C( U& C5 a1 Y5 G" \0 [: q( g
import swarm.objectbase.Swarm;* ~$ L8 u0 N1 l
import swarm.activity.ScheduleImpl;# f6 q- P8 G3 W) t, _
import swarm.activity.Activity;5 G8 E( H$ r# ^- V# b8 g
import swarm.activity.ActionGroupImpl;
8 F$ Y% j  T, w4 X5 A0 Q) @import swarm.collections.ListImpl;7 t: r$ ?' _4 _. V) K( H6 M/ K5 |
import swarm.defobj.Zone; 1 T7 p6 U& s4 ]& q; u! i8 |1 f
import swarm.Globals;
; L& y9 b7 b4 R0 }! jimport swarm.Selector;
4 I/ L7 n5 @$ @2 [: E0 yimport swarm.activity.ActionGroup;
; }- f% W5 O8 j0 }5 }class Agent {
* ~0 s5 D' D2 \' U+ {$ q        char id;
: W' z/ X$ k0 Z! `: w! V$ g, g
        Agent(char id) {
6 u- ~. o! |1 k" H/ W                this.id = id;0 H  k, w) N' P8 \" L0 u' C& k5 ?
        }' X0 c2 R# v$ S

& w- C- s* k) `4 q  E        public void agentStep() {/ B7 a$ t5 r  V
                System.out.println(id + ":" + Globals.env.getCurrentTime());5 Z0 d9 {) x! p5 i4 Q
        }$ |4 A0 i: |3 A# ]( n$ W) {
}0 j, V" @7 h& u! V
2 v1 Y$ _' E% K' N% M; q
public class ActionGroupDemo extends SwarmImpl {
+ A3 ]1 n4 g4 o! B3 g& k4 A& S        ScheduleImpl schedule;2 i+ u) o1 L# G6 y$ @
        ActionGroupImpl actionGroup;
  b" o# B" v8 p+ }        ListImpl list;& f: H' u7 e) o; X
        char Id = 'a';
; q/ B; B  W9 a5 D- r& m0 }" C; i7 h0 ]9 D
        ActionGroupDemo(Zone aZone) {+ L& U6 V2 _8 |0 [
                super(aZone);( e# ~! e7 J  A, Z; @$ z: }
                list = new ListImpl(aZone);5 I! w! K' X$ d/ x  T+ Q) _
                swarmSetp();- C1 C# r5 c! {  I
                actionGroup = new ActionGroupImpl(aZone);
6 _' p3 s3 Y$ c: c. j                schedule = new ScheduleImpl(aZone);* K/ [  p" W( e( G$ c. I
                try {
3 j* Y) f+ o" C5 p/ R                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ J1 X6 d: J" j3 R9 ]- k$ g                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
3 N1 h8 m+ W( R/ m                        / \7 f3 {. i3 I# D0 q. N
                        actionGroup.createActionForEach$message(list, agentSel);
/ U; o2 j* R+ e4 x9 D9 e! H1 K                        actionGroup.createActionTo$message(this, swarmSel);
  z0 G. n* ~8 F# N+ K                        schedule.at$createAction(0, actionGroup);
) d. ]* X( n6 h8 f, _* o                        schedule.at$createAction(1, actionGroup);
) I: W# t1 n  J( z                        schedule.at$createAction(2, actionGroup);
5 g6 d  L1 W5 d6 [- V8 y/ F' [& |& P$ f9 |4 d
                } catch (Exception e) {
8 [2 T" B" {6 r                        e.printStackTrace(System.err);
/ ]) y. ~2 j4 v6 J                        //System.out.println(e);
: N) W9 S$ F8 P8 ?                        System.exit(1);
3 S7 v1 P5 j- {7 u' e8 o. p                }7 _  Z$ p9 W, L. m. k7 M; P

6 J1 G8 |3 R7 J( ], c& N* W0 X
8 K$ A$ j# e+ L9 L- O5 E3 a& F  u9 [        }  K" o# l; o% ?  Q' D3 ?& C8 C
2 k) H7 ]% u' O. c/ l# N, X
        private void swarmSetp() {& N' [+ F1 u) n9 @
                list.addLast(new Agent(Id));
, R. |) ?0 r# P9 ?- `# u                Id++;
* }, f$ |0 z  a6 R+ z% A: m        }
, s! K2 B- C+ N6 P% d. C, b$ i+ U
/ [, W) H/ r2 u5 p        public Activity activateIn(Swarm context) {& r0 D& K9 B3 M$ \
                super.activateIn(context);
& s6 ], v+ q0 j/ a8 |) Z& b6 L                schedule.activateIn(this);
1 T" y" p, S! F6 W" [                return getActivity();! H2 {+ f, M3 u' f
        }
7 O: e7 y  k& O6 W; ?% s" Q
* r& n7 ^: v8 u( T( Q5 W        public static void main(String[] args) {' O6 k: z! N7 i4 f( _
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! e3 b9 g  t  X5 Z$ O0 E) A
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" B$ ]3 h. {0 ~5 Y' W  f! C
                swarms.buildObjects();
1 Q' {7 K& ~, [8 g2 ]3 b, u                swarms.buildActions();7 H2 L; C8 _, t( D7 z, b
                swarms.activateIn(null).run();
; Q( [- G6 j6 @; P) W8 h3 s        }
' Q. R- w" u% O" R/ T: e2 S+ q
( p$ _6 d9 G$ n$ @}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-9-15 21:21 , Processed in 0.015361 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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